开发者社区> zting科技> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Android TabHost的使用(Tab为Layout)

简介:
+关注继续查看

Android TabHost的使用,这里采用继承TabActivity的方法。

这里分别定制三个Tab,分别为american.xml, chinese.xml, japanese.xml三个Layout。

american.xml文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
 
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="American1" />
 
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="American2" />
 
</LinearLayout>

 chinese.xml文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
        <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Chinese button 1" />
 
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Chinese button 2" />
 
</LinearLayout>

  japanese.xml文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
     
        <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Japanese button 1" />
 
        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Japanese button 2" />
 
</LinearLayout>

 

三个Layout对应的java文件为AmericanActivity.java, ChinaActivity.java, JapanActivity.java

AmericanActivity.java文件

public class AmericanActivity extends Activity {
 
     @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.american);
          
        }
}

  ChinaActivity.java文件

public class ChinaActivity extends Activity {
 
     @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.chinese);
            
        }
}

  JapanActivity.java文件

public class JapanActivity extends Activity {
 
     @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.japanese);
           
        }
}

  

MainActivity.java 继承TabActivity。

public class MainActivity extends TabActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.activity_main);
        Resources resources = getResources();
        TabHost tabHost = getTabHost();
         
        TabHost.TabSpec spec;
         
        Intent intent = new Intent(this,AmericanActivity.class );
        spec = tabHost.newTabSpec("American");
        spec.setIndicator("Ameican Tab");
        spec.setContent(intent);
        tabHost.addTab(spec);
         
        Intent intent2 = new Intent(this,ChinaActivity.class );
        spec = tabHost.newTabSpec("China");
        spec.setIndicator("China Tab")
        spec.setContent(intent2);
        tabHost.addTab(spec);
         
        Intent intent3 = new Intent(this,JapanActivity.class );
        spec = tabHost.newTabSpec("Japanese");
        spec.setIndicator("Japanese Tab");
        spec.setContent(intent3);
        tabHost.addTab(spec);
         
        tabHost.setCurrentTab(1);
    }
 
     
}

  注意:在AndroidManifest文件中加入下面三行代码。

<activity android:name="com.example.app1.AmericanActivity" android:label="@string/app_name"></activity>
<activity android:name="com.example.app1.JapanActivity" android:label="@string/app_name"></activity>
<activity android:name="com.example.app1.ChinaActivity" android:label="@string/app_name"></activity>

 效果图:



本文转自Work Hard Work Smart博客园博客,原文链接:http://www.cnblogs.com/linlf03/archive/2013/03/16/2963592.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【Android 应用开发】Android - TabHost 选项卡功能用法详解
【Android 应用开发】Android - TabHost 选项卡功能用法详解
0 0
Android零基础入门第63节:过时但仍值得学习的选项卡TabHost
原文:Android零基础入门第63节:过时但仍值得学习的选项卡TabHost     由于前几天参加一个学习培训活动,几乎每天都要从早晨7点到晚上一两点,没有什么时间来分享,实在抱歉中间断更了几天。从今天开始恢复分享,更多精彩敬请期待。
1247 0
Android ViewPager实现Tabhost选项卡底部滑块动态滑动过渡
 《Android ViewPager实现Tabhost选项卡底部滑块动态滑动过渡》 之前基于github上的第三方开源控件ViewPagerIndicator的UnderlinePageIndicator(原文链接:http://blog.csdn.net/zhangphil/article/details/44752213),自己写了一个底部带有滑块、且当ViewPager页面切换时候选项卡也随之相应切换,且滑块也随之相应动态滑动效果得控件。
823 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Android组件化实现
立即下载
蚂蚁聚宝Android秒级编译—— Freeline
立即下载
Android插件化:从入门到放弃
立即下载