TabHelper অ্যাবস্ট্রাক্ট ক্লাস বর্তমান ডিভাইসের প্লাটফর্ম সংস্করনের উপর ভিত্ত করে সংস্করন-উপযুক্ত TabHelper এবং ComatTab ইনসটেন্স তৈরী করার জন্য একটি factory হিসাবে কাজ করে।
public abstract class TabHelper {
...
// Usage is TabHelper.createInstance(activity)
public static TabHelper createInstance(FragmentActivity activity) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
return new TabHelperHoneycomb(activity);
} else {
return new TabHelperEclair(activity);
}
}
// Usage is mTabHelper.newTab("tag")
public CompatTab newTab(String tag) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
return new CompatTabHoneycomb(mActivity, tag);
} else {
return new CompatTabEclair(mActivity, tag);
}
}
...
}