2015-11-02 2 views
1

Я следую учебник найти в Интернете, но, кажется, не работает ...Tabhost не показывая вкладки

я Tab 1 всегда открыто, что это нормально, но я не вижу меню Вкладки вверх. ..

Вот мой код:

Main2Activity:

public class Main2Activity extends Activity 
{ 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main2); 

     // create the TabHost that will contain the Tabs 
     TabHost tabs=(TabHost)findViewById(R.id.tabhost); 

     tabs.setup(); 

     TabHost.TabSpec spec=tabs.newTabSpec("tag1"); 

     spec.setContent(R.id.tab1); 
     spec.setIndicator("Analog Clock"); 
     tabs.addTab(spec); 

     spec=tabs.newTabSpec("tag2"); 
     spec.setContent(R.id.tab2); 
     spec.setIndicator("DigitalClock"); 
     tabs.addTab(spec); 

     spec=tabs.newTabSpec("tag3"); 
     spec.setContent(R.id.tab3); 
     spec.setIndicator("Button"); 
     tabs.addTab(spec); 
    } 

Content_main2.xml:

<?xml version="1.0" encoding="utf-8"?> 
<TabHost xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/tabhost" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
    <LinearLayout 
     android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent"> 
     <TabWidget android:id="@android:id/tabs" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content"/> 
     <FrameLayout android:id="@android:id/tabcontent" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent"> 
      <AnalogClock android:id="@+id/tab1" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent"/> 
      <DigitalClock android:id="@+id/tab2" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent"/> 
      <Button android:id="@+id/tab3" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:text="Do Nothing"/> 
     </FrameLayout> 
    </LinearLayout> 
</TabHost> 

This is how it looks when i run it

+0

http://stackoverflow.com/questions/11918488/android-how-do-you-set-up-the-tabhost –

ответ

1

Я решил его:

setContentView(R.layout.content_main2); 

Я звонил activity_main2, но не знаю, почему, когда я звоню activity_main2 не получают content_main2.

Я имею в Activity_main2.xml:

<include layout="@layout/content_main2" /> 

Кто-нибудь знает почему?

0

Вы можете использовать seperate activity для each tab. как сказал «intelliJ». создайте seperate activity и файл для каждого tab, а затем добавьте свой аналоговый цифровой сигнал и кнопку в каждом действии соответственно. в activity1 добавить analog и в activity2 добавить digital и так далее.

Смежные вопросы