切换卡的应用,切换卡的应用较广,可以充分的利用有限的空间,如上面所示,就是个切换卡的布局
切换卡的XML的布局文件主要分为三大部分
1. TabHost整个的容器 tabhost
2. TabWidget切换卡标题 tabs
3. Tab的内容 tabcontent
xml代码如下:
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
>
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/tv1"
android:text="The first tab"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/tv2"
android:text="The second tab"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/tv3"
android:text="The third tab"
/>
</FrameLayout>
</LinearLayout>
</TabHost>
Java代码实现:
public class TabWidgetActivity extends TabActivity implements OnTabChangeListener{
TabHost host;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tab_main);
host = getTabHost();
//对其进行选项卡的添加,tab1为定义的选项卡的引用,不要和其它的选项卡引用重复,不然不好监听对应的事件
host.addTab(host.newTabSpec("tab1").setIndicator("Tab1", this.getResources().getDrawable(R.drawable.ic_launcher)).setContent(R.id.tv1));
host.addTab(host.newTabSpec("tab2").setIndicator("Tab2", this.getResources().getDrawable(R.drawable.ic_launcher)).setContent(R.id.tv2));
host.addTab(host.newTabSpec("tab3").setIndicator("Tab3", this.getResources().getDrawable(R.drawable.ic_launcher)).setContent(R.id.tv3));
//指定当前选中的是Tab
host.setCurrentTab(0);
host.setOnTabChangedListener(this);
}
//变化时的事件
@Override
public void onTabChanged(String tabId) {
LinearLayout ly = new LinearLayout(this);
LayoutParams lp = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
ly.setLayoutParams(lp);
SeekBar seek = new SeekBar(this);
seek.setMax(100);
seek.setProgress(50);
seek.setSecondaryProgress(75);
seek.setLayoutParams(lp);
ly.addView(seek);
AlertDialog dialog = new AlertDialog.Builder(this).create();
dialog.setView(ly);
dialog.setButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
dialog.setIcon(R.drawable.error);
dialog.show();
}
}
分享到:
相关推荐
通过上述步骤,你将能够成功地在Android应用中实现两层`TabWidget`的使用,使得用户可以在各个层级上自由切换,提升应用的导航体验。同时,确保在设计和实现过程中,关注性能优化和用户体验,使得功能强大而又易于...
本总结将深入探讨`TabWidget`的基本使用、自定义以及与`ViewPager`的结合应用。 一、`TabWidget`基础 `TabWidget`是Android提供的一个标准控件,它允许用户通过点击不同的标签来切换不同的视图。在XML布局文件中,...
在Android开发中,`TabHost`和`TabWidget`是两个关键组件,它们常用于创建具有多标签(或称为卡片)界面的应用。这样的设计允许用户通过点击不同的标签来浏览和切换不同的视图或功能模块。下面我们将深入探讨这两个...
TabWidget控件是Android开发中常见的一种组件,主要用于在用户界面上创建标签式视图,让用户可以在多个页面间轻松切换,常用于应用的各种设置界面或者数据分类展示。它结合了TabHost和ViewSwitcher的概念,提供了...
在Android开发中,`TabHost`和`TabWidget`是构建多标签界面的重要组件,用于创建具有选项卡式导航的应用程序。`TabHost`作为容器,管理着`TabWidget`和一个`FrameLayout`,而`TabWidget`则是展示选项卡的控件。 1. ...
在Android开发中,`TabWidget`是一个非常重要的组件,它被广泛用于创建具有多个标签页的应用界面,每个标签页通常代表一个不同的功能区域或者内容。`TabWidget`结合`FrameLayout`或`ViewPager`可以轻松实现多标签...
"仿谷歌浏览器的TabWidget" 指的是一个软件界面设计组件,模仿了谷歌浏览器(Google Chrome)中的标签页功能。TabWidget是Qt库中的一个控件,用于实现多标签页的界面,用户可以在不同的标签页之间切换,类似于网页...
本文将深入探讨在Qt环境中如何利用TabWidget组件实现一个具有左侧排列、文字横向排列的标签页功能,同时也会涉及到在Linux和Windows操作系统上的应用。 TabWidget是Qt Widgets模块中的一个重要组件,它允许我们在一...
在Android开发中,TabHost是一个非常重要的组件...通过学习和实践,开发者可以创建出符合自己应用风格的选项卡界面,使应用更具吸引力。在实际编码过程中,务必保持代码的整洁和可读性,充分利用注释来辅助理解和维护。
在"QT 扁平化自定义风格界面TabWidget为核心"的主题中,我们将深入探讨如何利用QT框架创建一个扁平化的界面,这种风格通常与移动应用的设计趋势相吻合,既简洁又时尚。 首先,`mainwindow.cpp`和`mainwindow.h`是主...
通过`TabWidget`和`TabHost`,我们可以轻松地在Android应用中实现多选项卡的界面,每个选项卡都可以启动一个新的`Activity`。这种设计模式在许多应用中都非常常见,如新闻阅读器、社交媒体应用等,为用户提供了一种...
在Android开发中,`TabWidget`是一个非常常用的控件,它允许...通过结合`TabHost`和`ViewPager`,开发者可以创建出功能丰富的多标签应用界面。同时,对源码的学习和相关工具的运用,能进一步提升开发者的问题解决能力。
在Android应用开发中,TabWidget是一个非常重要的组件,它用于创建多标签的界面,使得用户可以在不同的视图间轻松切换。这个"Android应用源码之36.TabWidget控件学习.zip"压缩包提供了关于TabWidget的源码示例,非常...
总之,这份"应用源码之36.TabWidget控件学习"资料提供了深入理解Android TabWidget的实践机会。通过学习和研究源码,开发者可以更熟练地运用这个组件,提升自己的Android开发水平,同时也能为毕业设计提供有价值的...
`TabHost`、`TabWidget`和`FrameLayout`是Android SDK提供的一种原生方式,用于构建这种多标签页的应用界面。下面我们将详细探讨如何利用这些组件来实现底部菜单功能。 `TabHost`是Android中的一个容器类,它负责...
在本文中,我们将深入探讨如何使用Qt库来创建一个仿照谷歌浏览器Tab标签页的定制化TabWidget。这个Demo项目展示了如何实现新旧两种不同风格的谷歌浏览器标签,旨在为用户提供更加直观和舒适的界面体验。Qt是一个跨...
Android应用源码之36.TabWidget控件学习.zip项目安卓应用源码下载Android应用源码之36.TabWidget控件学习.zip项目安卓应用源码下载 1.适合学生毕业设计研究参考 2.适合个人学习研究参考 3.适合公司开发项目技术参考
《TabWidget控件详解及其应用》 TabWidget控件是Qt框架中常用的一种用户界面元素,主要用于实现页面的分页展示,类似于电脑浏览器中的标签页功能。它为用户提供了一种组织和切换多个视图的方式,使得在一个窗口内...
本文将详细介绍如何通过自定义View解决`TabWidget`底部横线(Strip)的颜色问题,使其与应用的UI风格保持一致。 首先,`TabWidget`是Android原生提供的一种用于展示多个选项卡的组件,通常在TabHost中使用。默认...