代码之家  ›  专栏  ›  技术社区  ›  Chris

在Tab小部件中控制XML(Android)

  •  0
  • Chris  · 技术社区  · 14 年前

    我使用以下代码设置TabWidget:

     public void onCreate(Bundle savedInstanceState) {    
            super.onCreate(savedInstanceState);    
            setContentView(R.layout.main);    
            TabHost mTabHost = getTabHost();  
    
            mTabHost.addTab(mTabHost.newTabSpec("tab_1").setIndicator("Tab1", getResources().getDrawable(R.drawable.tab_1)).setContent(new Intent(this, TabClass1.class)));
            mTabHost.addTab(mTabHost.newTabSpec("tab_2").setIndicator("Tab2", getResources().getDrawable(R.drawable.tab_2)).setContent(new Intent(this, TabClass2.class)));      
            mTabHost.addTab(mTabHost.newTabSpec("tab_3").setIndicator("Tab3", getResources().getDrawable(R.drawable.tab_3)).setContent(new Intent(this, TabClass3.class)));        
            mTabHost.setCurrentTab(0);          
        }
    

    所以,TabClass1、TabClass2和TabClass3是独立的.java文件,包含在我的包中。我能够在每个.java文件中创建内容,并在选择每个选项卡时显示内容—但是如何为每个.java文件分配XML布局文件呢?

    我尝试过各种设置,但无法在XML布局中创建TextView,也无法在选中特定选项卡时显示它。

    1 回复  |  直到 14 年前
        1
  •  0
  •   Jorgesys    14 年前

    好吧,在你的课堂上,你一定有

    @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.mycontentA);        
    }
    

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/layout"
            android:orientation="vertical"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent">
    <TextView
            android:id="@+id/myTextView"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"     
            android:ellipsize="marquee"
            android:singleLine="true"        
            android:textStyle="bold"
            android:textColor="#000000">
    </LinearLayout>
    

    您将在TabClass2.class和TabClass3.class中重用此xml布局,或者创建myContentB.xml和myContentC.xml