- 浏览: 637976 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
luo_ganlin:
别的不多说,点个赞!
关于Android隐式启动Activity -
IWSo:
谢楼主!研究了好久,原来是这样!
android中如何让LinearLayout实现点击时背景图片切换 -
fantao005x:
粘帖的不错
android中如何让listview的内容全部显示出来 -
learner576539763:
Android_gqs 写道请问博主,Viewstub 可实现 ...
android中ViewStub使用 -
goontosoon:
抄的什么啊,狗屁不通
对ContentProvider中getType(Uri uri)
tabHost往往被当作程序的通用框架入口,其主要的使用方式有两种: 1.继承TabActivity,结合对应的xml配置文件导入tab选项内容体 2.继承Activity,结合拥有TabHost标签的xml配置文件导入
对于1:
public class TabExdHostActivity extends TabActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TabHost myTabHost = this.getTabHost(); LayoutInflater.from(this).inflate(R.layout.exmain, myTabHost.getTabContentView(), true); myTabHost.addTab(myTabHost.newTabSpec("选项卡1").setIndicator("选项卡1").setContent(R.id.tab1)); myTabHost.addTab(myTabHost.newTabSpec("选项卡2").setIndicator("选项卡2").setContent(R.id.tab2)); myTabHost.addTab(myTabHost.newTabSpec("选项卡3").setIndicator("选项卡3").setContent(R.id.tab3)); } }
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:id="@+id/tab1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:id="@+id/view1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_1" /> </LinearLayout> <LinearLayout android:id="@+id/tab2" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:id="@+id/view2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_2" /> </LinearLayout> <LinearLayout android:id="@+id/tab3" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:id="@+id/view3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_3" /> </LinearLayout> <LinearLayout android:id="@+id/tab4" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:id="@+id/view4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_4" /> </LinearLayout> </LinearLayout>
对于2:
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); tabhost = (TabHost) findViewById(R.id.tabhost); tabhost.setup(); TabHost.TabSpec spec = tabhost.newTabSpec("tab1"); spec.setContent(R.id.tab1); spec.setIndicator("主页"); tabhost.addTab(spec); TabHost.TabSpec spec2 = tabhost.newTabSpec("tab2"); spec2.setContent(R.id.tab2); spec2.setIndicator("主页2"); tabhost.addTab(spec2); TabHost.TabSpec spec3 = tabhost.newTabSpec("tab3"); spec3.setContent(R.id.tab3); spec3.setIndicator("主页3"); tabhost.addTab(spec3); TabHost.TabSpec spec4 = tabhost.newTabSpec("tab4"); spec4.setContent(R.id.tab4); spec4.setIndicator("主页4"); tabhost.addTab(spec4); tabhost.setOnTabChangedListener(this); bt_cg = (Button) findViewById(R.id.bt_cg); bt_cg.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(TabHostActivity.this, TabExdHostActivity.class); startActivity(intent); } }); }
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TabHost android:id="@+id/tabhost" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:layout_width="match_parent" android:id="@+id/linearLayout1" android:layout_height="match_parent" android:orientation="vertical"> <TabWidget android:layout_width="match_parent" android:orientation="vertical" android:layout_height="wrap_content" android:id="@android:id/tabs"></TabWidget> <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent" android:id="@android:id/tabcontent"> <LinearLayout android:id="@+id/tab1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:id="@+id/view1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_1" /> <Button android:id="@+id/bt_cg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="chageTab" /> </LinearLayout> <LinearLayout android:id="@+id/tab2" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:id="@+id/view2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_2" /> </LinearLayout> <LinearLayout android:id="@+id/tab3" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:id="@+id/view3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_3" /> </LinearLayout> <LinearLayout android:id="@+id/tab4" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:id="@+id/view4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_4" /> </LinearLayout> </FrameLayout> </LinearLayout> </TabHost> </LinearLayout>
有时候需要tabhost里面的标签按钮置于底部,可以对xml文件进行如下修改:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TabHost android:id="@+id/tabhost" android:layout_width="match_parent" android:layout_height="match_parent"> <RelativeLayout android:layout_width="match_parent" android:id="@+id/linearLayout1" android:layout_height="match_parent" android:orientation="vertical"> <TabWidget android:layout_width="match_parent" android:layout_alignParentBottom="true" android:orientation="vertical" android:layout_height="wrap_content" android:id="@android:id/tabs"></TabWidget> <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent" android:id="@android:id/tabcontent"> <LinearLayout android:id="@+id/tab1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:id="@+id/view1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_1" /> <Button android:id="@+id/bt_cg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="chageTab" /> </LinearLayout> <LinearLayout android:id="@+id/tab2" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:id="@+id/view2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_2" /> </LinearLayout> <LinearLayout android:id="@+id/tab3" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:id="@+id/view3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_3" /> </LinearLayout> <LinearLayout android:id="@+id/tab4" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:id="@+id/view4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textView_4" /> </LinearLayout> </FrameLayout> </RelativeLayout> </TabHost> </LinearLayout>
效果如图:
发表评论
-
EditText软键盘弹出问题解决
2013-02-26 23:10 1471当带有EditView的activity第一次进入时,第一 ... -
android中获取系统相关属性adb
2012-11-15 14:41 22011.查看系统相关属性可以通过: adb shell ... -
Android使用Intent传递复杂参数及复杂参数列表
2012-11-05 17:29 1640刚开始一直纠结于Intent只能put像int, ... -
解决P6200/P6800扩展卡第三方软件不可写的BUG
2012-11-05 17:01 1037从XDA看来的步骤:1. Using a root-e ... -
android 中跟actionbar相关的属性
2012-10-25 17:07 2485android:uiOptions 这个属性用于设置A ... -
source insight使用快捷键
2012-10-25 10:59 1561F5指定行号,实现行跳转,在遇到编译错误的时候,能特 ... -
android中推出应用比较有效率的方法
2012-10-11 16:57 1168添加一个全局变量作为程序退出的标记(boolean类型) ... -
declare-styleable的使用
2012-10-09 13:59 1182declare-styleable的使用 decl ... -
android程序安全的建议
2012-09-29 14:58 5318如果保证自己的 ... -
Java自带的线程池ThreadPoolExecutor详细介绍说明和实例应用
2012-09-29 14:45 1080从 Java 5 开始,Java 提供了自己的线程池。线 ... -
android应用检测更新代码
2012-09-24 17:40 1857JAVA代码: UpdateManager.java ... -
adb命令详解
2012-09-19 15:04 2896Android adb的常用命令略解 Androi ... -
android中屏蔽其它系统按钮的dialog
2012-09-18 10:13 1657public class MyProgress ... -
如何给Scrollview里内容截屏并生成bitmap,注意:Scrollview里面内容较多有滚动了
2012-09-18 10:07 1650使用for循环递归累加其内部的子控件的高度: p ... -
wakelock的使用
2012-09-17 11:44 10088PowerManager.WakerLock是我分析St ... -
启动另外一个apk
2012-09-14 13:16 907这篇博文主要是获取其他apk程序的启动的主intent, ... -
android中全屏的方法
2012-09-14 13:04 9721.直接代码编写 @Override ... -
android:installLocation简析
2012-09-12 15:25 1124在Froyo(android 2.2,API Le ... -
外部apk启动启动另外一个apk
2012-09-06 17:54 1058public class TestingBroadc ... -
listview如何实现圆角
2012-09-05 17:32 1944首先呢,我们还是看几个示图:(这是360推出的一款天气预 ...
相关推荐
本篇文章将详细讲解如何在Android中使用TabHost,包括其基本概念、设置过程以及实现Activity之间的切换跳转。 **TabHost的基本概念** TabHost是Android SDK中的一个视图容器,它允许开发者在一个界面上展示多个Tab...
4. 子TabHost的创建和设置与主TabHost相似,只是它们的生命周期与主TabHost中的标签关联,当用户切换主TabHost的标签时,子TabHost也会相应地改变。 在"DoubleTabHost"这个示例中,我们可以看到如何实现这种嵌套...
本篇文章将详细介绍如何在Android项目中使用TabHost,以及它的工作原理。 首先,我们需要理解TabHost的基本结构。TabHost是一个容器,它包含两个主要组件:TabWidget和FrameLayout。TabWidget用于显示和管理各个...
androidTabhost的使用实例代码,仅供参考
本Demo主要展示了如何在Android应用中使用TabHost来构建一个多标签的用户界面。下面我们将深入探讨TabHost的使用方法以及涉及到的相关知识点。 1. **TabHost的基本概念** TabHost是一个容器,它可以在一个窗口内...
记得在项目中导入所需的依赖库,例如`androidx.appcompat.widget.TabHost`,这取决于你的项目所使用的Android支持库版本。 以上就是关于TabHost的详细使用方法,希望对初学者在理解并实现选项卡界面时有所帮助。...
本文将详细讲解如何在Android Studio中使用TabHost进行布局设计,以及如何自定义TabHost的各项属性,如字体颜色、大小等。 一、TabHost的基本概念 TabHost是Android SDK提供的一种布局容器,可以容纳一个或多个...
总之,Android的TabHost结合ActivityGroup可以创建一个具有多页面选项卡的用户界面,虽然在现代Android开发中,通常建议使用Fragment替代ActivityGroup,但理解这种旧的实现方式对理解Android历史和一些老项目依然很...
本文将深入讲解如何在Android中使用TabHost,并通过一个简单实例来演示其基本用法。 首先,我们需要了解TabHost的基本结构。TabHost通常包含两个主要部分:TabWidget和FrameLayout。TabWidget负责显示和管理各个Tab...
在XML布局文件中,可以使用`android:layout_gravity="bottom"`属性将TabHost固定在底部。同时,可能还需要对父布局设置`android:orientation="vertical"`和`android:gravity="bottom"`,确保整个布局从顶部到底部...
最后,使用`TabHost.addTab()`将TabSpec添加到TabHost中。 5. **动态改变背景颜色**: 如果需要在运行时改变背景颜色,可以在用户触发某个事件(如点击按钮)时,使用`ColorDrawable`动态设置TabHost的背景颜色,...
本文将通过实例详细讲解如何在Android应用中使用TabHost。 首先,我们要理解TabHost和TabWidget的关系。TabHost是一个容器,它包含了TabWidget和一个FrameLayout( Framelayout)。TabWidget是显示和管理各个Tab的...
在Android开发中,TabHost组件是一个非常实用的控件,用于创建带有标签页的应用界面,让用户可以在多个功能之间轻松切换。本文将详细讲解如何使用TabHost,并通过实例代码进行演示。 首先,TabHost的核心组成部分...
你可以创建一个XML布局文件来定义每个标签的样式,然后在`TabSpec.setIndicator()`方法中使用自定义的视图。 ```java View indicatorView = getLayoutInflater().inflate(R.layout.custom_tab, null); TextView ...
本案例是为初学者设计的,旨在帮助理解如何在Android应用中有效地使用TabHost。 TabHost是Android提供的一个容器,它允许你将多个小部件(通常是一个TabWidget和一个FrameLayout)组合在一起,形成一个多标签的视图...
在Android开发中,TabHost是实现标签栏切换页面的一个关键组件。TabHost允许开发者创建具有多个标签页的应用,每个标签页可以对应一个不同的活动(Activity)或者帧布局(FrameLayout)。下面将详细介绍如何使用...
// 在代码中使用自定义布局 View tabView = getLayoutInflater().inflate(R.layout.custom_tab, null); ((TextView) tabView.findViewById(R.id.tab_text)).setText("标签1"); tab1.setIndicator(tabView); ``` 5. ...
在Android开发中,TabHost是一个非常重要的组件,它允许开发者创建多标签的界面,类似于浏览器中的标签页。这个“android开发 tabhost应用”的主题聚焦于如何利用TabHost来实现一个可滚动并能调整文字居中显示的Tab...