转自:http://marshal.easymorse.com/archives/1739
在android中,也有类似分页标签(tab)的布局和组件。可以实现类似的功能。
看另外一个分页标签内容:
实现功能,继承TabActivity不是必须的,可以直接继承Activity编写Activity即可,见:
package com.easymorse;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TabHost;
public class TabDemoActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.setTitle(“演示标签分页”);
TabHost tabHost=(TabHost) this.findViewById(R.id.tabhost);
tabHost.setup();
//添加第一个tab页面
TabHost.TabSpec spec=tabHost.newTabSpec(“clockTab”);
spec.setContent(R.id.AnalogClock01);
spec.setIndicator(“模拟时钟”);
tabHost.addTab(spec);
//添加第二个tab页面
spec=tabHost.newTabSpec(“buttonTab”);
spec.setContent(R.id.DigitalClock01);
spec.setIndicator(“数字时钟”);
tabHost.addTab(spec);
//设置默认页面
tabHost.setCurrentTab(0);
}
}
对应的布局文件layout/main.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=”wrap_content”
android:layout_height=”wrap_content”>
<TabWidget android:id=”@android:id/tabs”
android:layout_width=”fill_parent” android:layout_height=”wrap_content” />
<FrameLayout android:id=”@android:id/tabcontent”
android:paddingTop=”80px” android:layout_width=”fill_parent”
android:layout_height=”fill_parent”>
<AnalogClock android:id=”@+id/AnalogClock01″
android:layout_width=”wrap_content” android:layout_height=”wrap_content”></AnalogClock>
<DigitalClock android:id=”@+id/DigitalClock01″
android:layout_width=”fill_parent” android:layout_height=”fill_parent”
android:layout_centerHorizontal=”true”></DigitalClock>
</FrameLayout>
</TabHost>
</LinearLayout>
这里需要注意以下几点:
- TabHost是分页标签的总的容器,必须指定android:id为@android:id/tabhost
- TabWidget放在TabHost容器中,必须指定android:id属性为@android:id/tabs
- FrameLayout是Tab内容的容器,其中的每个内容都会被实现为一个分页标签,布局上要做处理,比如paddingTop,定位标签内容
分享到:
相关推荐
在Android开发中,Tab分页式菜单是一种常见的用户界面设计,它允许用户通过不同的标签页浏览和切换不同的内容区域。这种设计模式提高了用户体验,因为用户可以直观地了解应用的主要功能并轻松导航。以下是对"Android...
同时,标签中的“源码”意味着可能包含实际的代码示例,而“工具”可能指代了一些辅助工具或库,例如使用第三方库实现更便捷的分页加载。 总的来说,实现"android GridViewPaging 分页加载数据"需要对Android的UI...
在Android应用开发中,Tab分页标签是一种常见的用户界面设计,用于展示多个相互关联的页面或视图。这种设计能够帮助用户轻松地在不同的功能或数据集之间切换。本篇文章将详细探讨如何利用ActivityGroup来实现这样的...
很多客户端软件和浏览器软件都喜欢用Tab分页标签来搭建界面框架。读者也许会马上想到使用TabHost 与 TabActivity的组合,其实最常用的不是它们,而是由GridView与ActivityGroup的组合。每当用户在GridView选中一项,...
- 如果标签数量过多,可能需要考虑分页或者滚动效果。 通过理解和应用`LineBreakLayout`,开发者可以轻松地在Android应用中创建美观、灵活的标签布局,提升用户界面的可读性和互动性。结合实际需求,您可以对这个...
在Android应用开发中,Tab分页式菜单是一种常见的用户界面设计模式,用于组织大量内容或功能,让用户可以方便地在不同的视图之间切换。在这个"Android应用源码之(Tab分页式菜单)"的项目中,我们可以深入学习如何构建...
3. **TabLayout**:`TabLayout`是Android Design Support Library的一部分,常与`ViewPager`结合使用,用于展示分页指示器。在美团和饿了么的首页菜单中,可以看到底部有多个标签,每个标签代表一个分类,用户可以...
- 动态加载:当标签数量过多时,可以考虑实现分页加载,减少初次加载时的性能消耗。 - 点击事件:处理点击事件,当用户点击某个标签时可以执行相应的操作。 - 动态添加/删除:允许程序运行时动态添加或删除标签,...
综上所述,`ActivityGroup + GridView`实现的Tab分页标签方案虽然在早期Android开发中常见,但随着Android系统的不断升级,现在更推荐使用`Fragment`和`ViewPager`等更现代的组件。然而,理解这些旧技术仍然有助于...
总的来说,"android tab分页优化demo"涵盖了Android开发中的多个核心知识点,包括Fragment的使用、UI设计、性能优化、事件处理以及适配性测试等,对于理解和实践Android应用开发具有很高的学习价值。通过深入研究这...
此外,可以使用TabLayout配合ViewPager实现标签式分页导航,只需将TabLayout的`setupWithViewPager()`方法与ViewPager对象绑定,TabLayout会自动根据Fragment的标题生成标签。 **Fragment间的通信** Fragment与...
在早期的Android版本中,`TabHost`经常与`TabWidget`和`FrameLayout`一起使用,但在更新的版本中,推荐使用`FragmentTabHost`,它可以更好地与`Fragment`结合,提供更现代的分页体验。 在`FragmentTabHostTest`中,...
TabHost是Android SDK早期提供的一个组件,用于实现标签页式的界面布局。它允许开发者在同一个Activity中创建多个FrameLayout,并通过TabWidget来切换不同的内容区域。要实现滑动切换,开发者需要监听TabHost的...
标签中的“android”代表这是一个Android开发项目;“Metro”指的是设计风格;“滑动”是指利用ViewPager实现的页面滑动功能;而“分页”则指的是通过ViewPager展示多个独立的页面。总的来说,这个项目旨在教开发者...
首先,我们来看“android分页”。在Android应用中,分页通常用于处理大量数据,避免一次性加载所有内容导致内存消耗过大和用户体验降低。实现分页有多种方式,如使用`RecyclerView`配合`PagerSnapHelper`或`...
HTML部分通常包括一个容器(如`<div>`)来承载分页链接,这些链接可以是纯文本或带有图标的`<a>`标签。JavaScript部分则会处理点击事件,根据用户的选择动态加载对应页面的数据,或者调整当前显示的内容。 实现分页...
完成以上步骤后,你就成功地在Android应用中创建了一个使用分页控件实现的底部菜单。在提供的`myTabTest`项目文件中,应该包含了实现这一功能的具体代码示例。通过分析和学习这个示例,你可以更好地理解和掌握这个...
【安卓 Android 仿饿了么 竖直分页 类demo】是一个针对Android平台的应用程序开发项目,旨在实现类似“饿了么”App中的垂直滚动分页效果。在这个项目中,开发者可以学习如何创建一个带有底部固定标签和内容联动的...
在Android应用开发中,"使用Fragment替代TabHost实现分页效果"是一种常见的设计模式,它有助于提高代码的可维护性和灵活性。Fragment是Android SDK 3.0(API级别11)引入的一个组件,用于在大屏幕设备如平板电脑上更...