Android 控件之TabHost Tab页
TabHost用来显示Tab页,先看效果
一概述
提供Tab页的窗口视图容器,它有俩个children,一组是用户可以选择指定Tab页的标签,另一组是FrameLayout用来显示该Tab页的内容。个别元素通常控制使用这个容器对象,而不是设置在子元素本身的值。
二、重要方法
addTab(TabHost.TabSpec tabSpec):添加一项Tab页
clearAllTabs():清除所有与之相关联的Tab页.
getCurrentTab():返回当前Tab页.
getTabContentView():返回包含内容的FrameLayout
newTabSpec(String tag):返回一个与之关联的新的TabSpec
三、实例
1.布局文件,需要使用FrameLayout
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView android:id="@+id/view1"
android:background="@drawable/b"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="页1"/>
<TextView android:id="@+id/view2"
android:background="@drawable/c"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="页2"/>
<TextView android:id="@+id/view3"
android:background="@drawable/d"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="页3"/>
</FrameLayout>
2.继承TabActivity
public class TabHostDemo extends TabActivity
3.获取次此abHost
TabHost tabHost = getTabHost();
4.设置布局
LayoutInflater.from(this).inflate(R.layout.tabhostpage, tabHost.getTabContentView(), true);
5.添加Tab页
tabHost.addTab(tabHost.newTabSpec("tab1")
.setIndicator("tab1")
.setContent(R.id.view1));
tabHost.addTab(tabHost.newTabSpec("tab3")
.setIndicator("tab2")
.setContent(R.id.view2));
tabHost.addTab(tabHost.newTabSpec("tab3")
.setIndicator("tab3")
.setContent(R.id.view3));
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架