怎么在Android应用中实现一个选项卡功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
选项卡(TabHost)方便的在窗口上设置多个标签页,每个标签页相当于获得一个与外部容器相同大小的组件摆放区域
通过这种方式,可以在一个容器中放置多组件。
创建4个java文件并对应layout
创建主java ,代码
package lianxi; import com.example.jichu_lianxi.R; import android.app.TabActivity; import android.content.Intent; import android.content.res.Resources; import android.os.Bundle; import android.widget.TabHost; public class TobHost_lianxi extends TabActivity{ @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); //获取当前Activity的标签,该方法的实现已经执行了setContentView(com.android.internal.R.layout.tab_content); Resources resources = getResources(); TabHost tabHost = getTabHost(); TabHost.TabSpec spec; /* * 对方法的解释: * 1. newTabSpec("artist")创建一个标签项,其中artist为它的标签标识符 * 2. setIndicator("标签1", resources.getDrawable(R.drawable.bulb_off)) * 显示文本以及标签上的图标(该图标不是一个图片,而是一个xml文件) */ //添加第一个标签 Intent intent = new Intent(TobHost_lianxi.this,KeyOnclick.class); spec = tabHost.newTabSpec("keyonclick").setIndicator("标签1", resources.getDrawable(R.drawable.bulb_off)).setContent(intent); tabHost.addTab(spec);//将标签添加到标签项中 //添加第二个标签 Intent intent2 = new Intent(TobHost_lianxi.this,List_lianxi.class); spec = tabHost.newTabSpec("list").setIndicator("标签2",resources.getDrawable(R.drawable.bulb_off)).setContent(intent2); tabHost.addTab(spec); //添加第三个标签 Intent intent3 = new Intent(TobHost_lianxi.this,ToggleButton_lianxi.class); spec = tabHost.newTabSpec("togglebutton").setIndicator("标签3",resources.getDrawable(R.drawable.bulb_off)).setContent(intent3); tabHost.addTab(spec); //添加第四个标签 Intent intent4 = new Intent(TobHost_lianxi.this,ToggleButton_lianxi.class); spec = tabHost.newTabSpec("toggle").setIndicator("标签4",resources.getDrawable(R.drawable.bulb_off)).setContent(intent4); tabHost.addTab(spec); //设置第一次打开的默认显示的标签,参数与 .newTabSpec的参数匹配 //tabHost.setCurrentTabByTag("toggle"); //设置第一次打开的默认显示的标签,参数代表其添加到标签中的顺序,位置从0开始 tabHost.setCurrentTab(1); } }
其中 KeyOnclick.java、List_lianxi.java、ToggleButton_lianxi.java 代码不贴了
不要忘了在AndroidManifest.xml文件中修改代码
<application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="lianxi.Mainactivity"> <intent-filter > <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="lianxi.NewActivity"></activity> <activity android:name="lianxi.AlertDialog_lianxi"></activity> <activity android:name="lianxi.Notification_lianxi"></activity> <activity android:name="lianxi.KeyOnclick"></activity> <activity android:name="lianxi.List_lianxi"></activity> <activity android:name="lianxi.ToggleButton_lianxi"></activity> <activity android:name="lianxi.TobHost_lianxi"></activity> </application>
关于怎么在Android应用中实现一个选项卡功能问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。