Я думаю, вы должны обернуть свой виджет вкладки в любую ViewGroup, такую как LinearLayout или RelativeLayout, и создать статическую функцию в вашем tabActivity, чтобы показать / скрыть эту обертку. Вот небольшой код, который может быть вам полезен.
<LinearLayout
android:id="@+id/popupTabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:visibility="gone">
<TabWidget android:id="@android:id/tabs"
android:layout_height="wrap_content"
android:layout_width="fill_parent"></TabWidget>
</LinearLayout>
Теперь ваша вкладка должна делать что-то вроде этого.
public class TabsView extends TabActivity {
public static LinearLayout popupTabs ;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
popupTabs = (LinearLayout) findViewById(R.id.popupTabs);
// Your other code
//............
//............
}
// Show Tabs method
public static void showTabs(){
popupTabs.setVisibility(ViewGroup.VISIBLE);
}
// Hide Tabs method
public static void hideTabs(){
popupTabs.setVisibility(ViewGroup.GONE);
}
}
Теперь вы можете вызывать этот метод статически из любого места в вашем коде, как это
// hide tab from any activity
TabsView.showTabs();
// hide tab from any activity
TabsView.hideTabs()