我是靠谱客的博主 义气月饼,最近开发中收集的这篇文章主要介绍安卓控件使用系列28:TabHost卡片的使用方法1继承TabActivity,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在一个页面上会出现几个不同的菜单项(卡片),点击菜单项,就会进入不同的页面。这样的功能在安卓应用程序中经常出现,下面我们来分享一下它的使用方法。

这个例子实现的是在页面的三个卡片上点击任意一个卡片,进入不同的页面。

整体思路:在xml文件中使用FrameLayout布局方式,在里面添加2个LinearLayout布局和1个TextView控件,宽度和高度都是填充父窗口;在活动中定义一个TabHost类对象,把这个TabHost类对象和布局文件绑定到这个活动上,把2个LinearLayout布局和1个TextView控件添加到TabHost类对象中,设置setOnTabChangedListener事件,在里面根据选择的不同卡片使用Toast方式显示不同的信息。

activity_main.xml文件:

   <!-- 第一个布局 -->
    <LinearLayout 
        android:id="@+id/view1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        >
        <TextView 
            android:id="@+id/textview1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="罗志祥"
            />
    </LinearLayout>

    <!-- 第二布局 -->
    <LinearLayout 
        android:id="@+id/view2"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        >
        
        <TextView 
            android:id="@+id/textview2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="周杰伦"
            />
    </LinearLayout>
    
    <!-- 第三布局 -->
    <TextView 
        android:id="@+id/view3"
        android:background="#00ff00"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:text="陈奕迅"
        />
MainActivity.java文件:
       public class MainActivity extends TabActivity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setTitle("TabDemoActivity");
		TabHost tabHost=getTabHost();
		LayoutInflater.from(this).inflate(R.layout.activity_main, tabHost.getTabContentView(),true);
		tabHost.addTab(tabHost.newTabSpec("tab1").setIndicator("tab1",getResources().getDrawable(R.drawable.ic_launcher)).setContent(R.id.view1));
		tabHost.addTab(tabHost.newTabSpec("tab2").setIndicator("tab2").setContent(R.id.view2));
		tabHost.addTab(tabHost.newTabSpec("tab3").setIndicator("tab3").setContent(R.id.view3));
		//当选择的tab发生变化的时候触发的事件
		tabHost.setOnTabChangedListener(new OnTabChangeListener() {
			
			@Override
			public void onTabChanged(String tabId) {
				
				if(tabId.equals("tab1")){
					Toast.makeText(MainActivity.this, "显示tab1", 1).show();
				}
				else if(tabId.equals("tab2")){
					Toast.makeText(MainActivity.this, "显示tab2", 1).show();
				}
				else if(tabId.equals("tab3")){
					Toast.makeText(MainActivity.this, "显示tab3", 1).show();
				}
			}
		});
	}

}

最后

以上就是义气月饼为你收集整理的安卓控件使用系列28:TabHost卡片的使用方法1继承TabActivity的全部内容,希望文章能够帮你解决安卓控件使用系列28:TabHost卡片的使用方法1继承TabActivity所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部