在代码中为选项卡添加内容
16lz
2021-01-26
在android中进度条和选项卡的使用一文中介绍了选项卡的简单使用,该文中使用XML文件为Tab添加内容,下面采用另一种方式,实现TabHost的TabContentFactory接口,通过重写createTabContent()方法来实现在代码中动态地添加选项卡的内容,代码如下:
Activity:
package com.home;import java.util.ArrayList;import java.util.List;import android.app.TabActivity;import android.os.Bundle;import android.view.View;import android.widget.ArrayAdapter;import android.widget.ListView;import android.widget.TabHost;import android.widget.TabHost.TabContentFactory;public class TabTestActivity extends TabActivity implements TabContentFactory {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);// 获得TabHost对象TabHost th = getTabHost();// 为Tab添加标签和显示内容th.addTab(th.newTabSpec("all").setIndicator("所有通话记录").setContent(this));th.addTab(th.newTabSpec("ok").setIndicator("已接来电").setContent(this));th.addTab(th.newTabSpec("cancel").setIndicator("未接来电").setContent(this));}@Overridepublic View createTabContent(String tag) {// 实例化列表视图ListViewListView lv = new ListView(this);List<String> list = new ArrayList<String>();// 在list中添加显示内容if (tag.equals("all")) {list.add("张三");list.add("李四");list.add("王五");list.add("赵六");} else if (tag.equals("ok")) {list.add("张三");list.add("李四");} else {list.add("王五");list.add("赵六");}ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_checked, list);// 为ListView设置适配器lv.setAdapter(adapter);return lv;}}
更多相关文章
- Android(安卓)Launcher 研究学习
- ROSJava安装和在Android中使用ROS
- android如何为listview的每项中edittext控件添加textwacher
- Android(安卓)UI 使用HTML布局(直接打开服务器网页)
- Android(安卓)AIDL 必看内容
- Activity作为dialog展示,如何添加自定义圆角背景
- ArcGIS4Android开发----地图展示
- 浅入浅出Android(003):使用TextView类构造文本控件
- Android(安卓)动态添加按钮,并获取id,添加事件