TabHost实现简单Tab切换

继承TabActivity
从TabActivity中用getTabHost()方法获取TabHost,然后设置标签内容布局:
1、TabHost    必须设置android:id为@android:id/tabhost
2、TabWidget   必须设置android:id为@android:id/tabs
3、FrameLayout  必须设置android:id为@android:id/tabcontent
否则将出现类似报错:


//布局

<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@android:id/tabhost"
 >
 <LinearLayout 
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical">

   <TabWidget 
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:id="@android:id/tabs"
     ></TabWidget>

   <FrameLayout 
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:id="@android:id/tabcontent"
    >
    <LinearLayout 
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/widget_layout_red"
        android:background="#ff0000"
        android:orientation="vertical"
        ></LinearLayout>
     <LinearLayout 
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/widget_layout_yellow"
        android:background="#FCD209"
        android:orientation="vertical"
        ></LinearLayout>
  </FrameLayout>

 </LinearLayout>
</TabHost>继承TabActivity
public class MainActivity extends TabActivity {
private TabHost tabhost;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.demo);
    
    //从TabActivity上面获取放置Tab的TabHost
    tabhost = getTabHost();
//两种添加方式
    tabhost.addTab(tabhost
             //创建新标签one
            .newTabSpec("one")
            //设置标签标题
            .setIndicator("红色")
            //设置该标签的布局内容
            .setContent(R.id.widget_layout_red));
tabhost.addTab(tabhost.newTabSpec("two").setIndicator("黄色").setContent(R.id.widget_layout_yellow)); } }

 

posted on 2019-07-04 09:55  带镐伤的土豆  阅读(159)  评论(0编辑  收藏  举报

导航