您的位置:首页 > 其它

关于安卓开发选项卡的实现

2013-07-03 12:33 316 查看
选项卡(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>


效果图(第一张为标签2。因为tabHost.setCurrentTab(1); 设置第2个添加的标签项为默认显示,从0开始算)





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: