package com.yarin.android.Examples_04_29;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.TabActivity;
import android.content.DialogInterface;
import android.graphics.Color;
import android.os.Bundle;
import android.widget.TabHost;
import android.widget.TabHost.OnTabChangeListener;
public class Activity01 extends TabActivity
{
//声明TabHost对象
TabHost mTabHost;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//取得TabHost对象
mTabHost = getTabHost();
/* 为TabHost添加标签 */
//新建一个newTabSpec(newTabSpec)
//设置其标签和图标(setIndicator)
//设置内容(setContent)
mTabHost.addTab(mTabHost.newTabSpec("tab_test1")
.setIndicator("TAB 1",getResources().getDrawable(R.drawable.img1))
.setContent(R.id.textview1));
mTabHost.addTab(mTabHost.newTabSpec("tab_test2")
.setIndicator("TAB 2",getResources().getDrawable(R.drawable.img2))
.setContent(R.id.textview2));
mTabHost.addTab(mTabHost.newTabSpec("tab_test3")
.setIndicator("TAB 3",getResources().getDrawable(R.drawable.img3))
.setContent(R.id.textview3));
//设置TabHost的背景颜色
mTabHost.setBackgroundColor(Color.argb(150, 22, 70, 150));
//设置TabHost的背景图片资源
//mTabHost.setBackgroundResource(R.drawable.bg0);
//设置当前显示哪一个标签
mTabHost.setCurrentTab(0);
//标签切换事件处理,setOnTabChangedListener
mTabHost.setOnTabChangedListener(new OnTabChangeListener()
{
// TODO Auto-generated method stub
@Override
public void onTabChanged(String tabId)
{
Dialog dialog = new AlertDialog.Builder(Activity01.this)
.setTitle("提示")
.setMessage("当前选中:"+tabId+"标签")
.setPositiveButton("确定",
new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int whichButton)
{
dialog.cancel();
}
}).create();//创建按钮
dialog.show();
}
});
}
}
分享到:
相关推荐
在本文中,我们将深入探讨TabWidget的使用方法,包括基本概念、功能特性、配置与自定义,以及实际应用案例。 1. TabWidget基础 TabWidget是一个容器控件,它可以容纳多个子窗口(或称为“标签页”),每个子窗口都...
最后,如果你的项目使用了QTabWidget的子类或者需要更复杂的定制,你可能需要重载`paintEvent()`或`drawTab()`等方法,直接进行绘图操作。但这种方式通常涉及到更多的代码和对Qt图形系统更深入的理解。 总结来说,...
Android Tablayout 自定义Tab布局的使用案例 Android Tablayout 是 Android 设计库中的一部分,主要用于实现标签页功能...通过本文,我们可以了解到 Android Tablayout 的使用方法,并学习如何实现自定义的 Tab 布局。
2. 使用TabHost的`addTab()`方法为每个Tab添加标签和对应的Intent。 3. 设置默认选中的Tab。 4. 调用TabHost的`setup()`方法完成配置。 二、ActionBarSherlock 随着Android设计指南的推广,ActionBar(也称为Action...
为了实现画图功能,还可以自定义一个图形类,继承自`QGraphicsItem`,并重写其`paint`方法来实现自定义的绘制效果。 总的来说,这个例子展示了如何在Qt环境中利用`QTabWidget`和`QGraphicsView`组件创建一个可画图...
如果需要在运行时动态添加或删除Tab,可以使用`TabLayout`的`addTab()`和`removeTabAt()`方法。 五、监听Tab切换 `TabLayout`提供了一个`OnTabSelectedListener`接口,可以监听Tab的选中和取消选中事件: ```java ...
本源码应该是通过自定义一个继承自QTabWidget的类,然后修改了其paintEvent()方法,以达到竖向显示标签页的效果。 3. **自定义QTabWidget** 自定义控件是Qt开发中常见的一种方式,通过继承已有的控件并重写或扩展...
6. **个性化Tab**:如果你需要更复杂的Tab样式,例如自定义图标或文字颜色,可以重写`TabLayout`的`Tab`对象,使用`setIcon`和`setText`方法,或者设置自定义的`TabView`。 7. **注意事项**:确保在不同的设备和...
这通常涉及到使用`TabLayout.OnTabSelectedListener`监听Tab的选择状态,并使用`TabLayout.addTab()`方法动态添加Tab。 5. **编程实现** 在`MainActivity`中,初始化`TabLayout`和`ViewPager`,并设置适配器。同时...
方法一:使用QFile和QTextStream 这种方法适用于Excel文件中的数据比较简单,主要是纯文本类型。首先,通过QFile打开Excel文件,然后利用QTextStream读取每一行的数据。由于QTextStream不支持解析复杂的Excel格式,...
在`TabLayout`中添加`Tab`时,可以使用`TabLayout.addTab()`方法,并传入一个`Tab`对象,该对象可以通过`TabLayout.newTab()`创建。此外,我们还需要为每个Tab设置对应的`Fragment`,这通常在`PagerAdapter`的`...
当我们需要实现类似Tab的效果时,`Fragment`和`TabLayout`结合使用是一个常见且实用的方法。下面我们将详细介绍如何利用`Fragment`来实现Tab效果。 首先,理解`Fragment`的基本概念。`Fragment`代表了Activity中的...
或者使用第三方库如`androidx.appcompat.widget.Toolbar`和`TabLayout`来自定义更现代的Tab样式。 5. **处理Tab切换事件** 可以重写`TabHost.OnTabChangeListener`监听Tab切换,以便在用户切换Tab时执行特定操作:...
首先,让我们了解QTabWidget的基本用法。QTabWidget由一系列的选项卡(tabs)组成,每个选项卡都可以承载一个QWidget或其子类,如QDialog、QFrame等。默认情况下,QTabWidget的选项卡是水平排列的,用户可以通过点击...
本教程将详细介绍如何使用Fragment实现Tab切换功能,以便于创建更加动态和交互丰富的应用界面。 首先,我们需要理解Fragment的基本概念。Fragment是Activity的一部分,可以独立存在,也可以与Activity中的其他...
本篇文章将深入解析如何使用`ViewPager`来实现`Tab`功能,以及背后的源码逻辑。 首先,`ViewPager`是Android SDK中的一个视图类,它允许用户通过左右滑动来浏览多个页面。`ViewPager`通过适配器(如`PagerAdapter`...
在Android应用开发中,Tab和Fragment的结合使用是构建用户界面的一种常见方法,特别是对于创建具有多个可切换视图的应用。Tab通常用于显示不同的类别或功能,而Fragment则承载具体的界面内容。在这个...
- 如果每个Tab都使用Activity,需要确保这些Activity能够作为Fragment使用。通常情况下,我们可以把它们改为Fragment,或者在Activity内部嵌套Fragment。 - 考虑性能问题,通常推荐使用Fragment而不是Activity,因为...
在早期的Android版本中,我们可能使用ActionBar或Action Bar Sherlock库来实现Tab功能,但现在更推荐使用AppCompatActivity和TabLayout结合的方式,因为它们提供了更好的兼容性和更多的自定义选项。 实现滑动切换...
这里的`setupWithViewPager`方法将`TabLayout`与`ViewPager`关联起来,使得`TabLayout`的标签能够根据`ViewPager`中的页面数量自动更新。 接着,`ViewPager`通常用来自定义多个可滑动的页面,每个页面对应一个`...