转:http://www.eoeandroid.com/thread-113941-1-1.html
横向拖动的TabHost 效果图:
<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<RelativeLayout android:layout_width="fill_parent"
android:layout_height="wrap_content">
<HorizontalScrollView android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:fillViewport="true"
android:scrollbars="none"
android:layout_toLeftOf="@+id/next_button"
android:layout_toRightOf="@+id/up_button">
<TabWidget android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</HorizontalScrollView>
</RelativeLayout>
<FrameLayout android:id="@android:id/tabcontent"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<TextView android:id="@+id/textview01" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/hello" />
<TextView android:id="@+id/textview02" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/hello" />
<TextView android:id="@+id/textview03" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/hello" />
<TextView android:id="@+id/textview04" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/hello" />
<TextView android:id="@+id/textview05" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/hello" />
</FrameLayout>
</LinearLayout>
import android.app.TabActivity;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.util.Log;
import android.widget.Button;
import android.widget.TabHost;
import android.widget.TabWidget;
public class MainActivity extends TabActivity {
TabHost m_TabHost;
Button upButton;
Button nextButton;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Init
initView();
initTabHost();
// Get scream width
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int screenWidth = dm.widthPixels;
Log.i("test", "screenWidth=" + screenWidth);
// Get tab counts
TabWidget tabWidget = m_TabHost.getTabWidget();
int count = tabWidget.getChildCount();
if (count > 3) {
for (int i = 0; i < count; i++) {
tabWidget.getChildTabViewAt(i).setMinimumWidth((screenWidth) / 3);
}
}
}
private void initView() {
m_TabHost = getTabHost();
// upButton = (Button) findViewById(R.id.up_button);
// nextButton = (Button) findViewById(R.id.next_button);
}
private void initTabHost() {
m_TabHost.addTab(m_TabHost.newTabSpec(0 + "").setIndicator("A eoe")
.setContent(R.id.textview01));
m_TabHost.addTab(m_TabHost.newTabSpec(1 + "").setIndicator("B eoe")
.setContent(R.id.textview01));
m_TabHost.addTab(m_TabHost.newTabSpec(2 + "").setIndicator("C eoe")
.setContent(R.id.textview01));
m_TabHost.addTab(m_TabHost.newTabSpec(3 + "").setIndicator("D eoe")
.setContent(R.id.textview01));
m_TabHost.addTab(m_TabHost.newTabSpec(4 + "").setIndicator("E eoe")
.setContent(R.id.textview01));
m_TabHost.addTab(m_TabHost.newTabSpec(5 + "").setIndicator("F eoe")
.setContent(R.id.textview01));
m_TabHost.addTab(m_TabHost.newTabSpec(6 + "").setIndicator("G eoe")
.setContent(R.id.textview01));
}
}
- 大小: 12.5 KB
分享到:
相关推荐
"可以横向拖动的TabHost"是一个实现TabHost功能增强的设计,允许用户不仅可以通过点击,还可以通过横向滑动来切换标签。这种设计提高了用户体验,使得在多标签界面中导航更加直观和流畅。 在Android SDK中,TabHost...
在这个“Android项目可以横向拖动的TabHost.rar”中,开发者提供了一个创新的实现方式,使得TabHost的标签页可以横向滑动,为用户提供更流畅的操作体验。下面我们将深入探讨这个项目的相关知识点。 首先,我们要...
在"Android应用源码可以横向拖动的TabHost"这个项目中,我们可以深入学习如何实现一个支持横向滑动的TabHost,这对于构建用户友好的多视图应用程序至关重要。以下将详细讲解相关知识点。 1. TabHost基本概念:...
Android-可以横向拖动的TabHost(源码).zip
"基于Android的可以横向拖动的TabHost.zip" 这个标题指出,这个项目或示例是关于在Android平台上实现一个能够横向滑动切换的TabHost组件。TabHost是Android SDK中一个用于展示多个Tab的组件,通常用于创建多页面的...
这个“可以横向拖动的TabHost”项目为Android开发者提供了一种新的交互方式,提升了用户在多标签场景下的体验。通过理解其背后的实现原理,开发者可以在自己的应用中灵活地应用这种功能,为用户提供更加直观和便捷的...
【Android应用源码可以横向拖动的TabHost.zip】是一个包含Android应用开发源代码的压缩包,主要展示了如何在Android应用程序中实现一个可横向滑动的TabHost组件。TabHost是Android SDK提供的一种布局管理器,它允许...
本项目“安卓Android源码——可以横向拖动的TabHost”提供了一种创新的实现方式,允许用户通过水平滑动来切换Tab,为用户提供了更流畅的操作体验。 TabHost的常规使用是通过设置TabSpec,每个TabSpec代表一个Tab...
本资源"安卓Android源码——可以横向拖动的TabHost.rar"提供了一种实现方式,允许用户横向滑动来切换Tab,为用户提供了更直观、更丰富的交互体验。 在Android系统中,TabHost通常与TabWidget和FrameLayout一起使用...
【标题】: "可横向拖动的TabHost" 指的是在Android开发中实现的一种创新的用户界面设计。TabHost是Android SDK提供的一种组件,用于创建带有多个标签(tabs)的应用界面,用户可以通过点击标签在不同的内容之间切换...
本项目“可横向拖动的TabHost”则提供了一个创新的解决方案,让用户可以通过水平滑动来切换标签页,提高了用户体验。 首先,我们要理解`TabHost`的基本用法。`TabHost`是Android SDK中提供的一种布局容器,用于实现...
【标题】"应用源码可以横向拖动的TabHost.zip" 涉及到的是Android开发中的一个关键组件——TabHost,以及如何实现其横向滚动功能。TabHost是Android SDK中用于创建多标签界面的控件,它允许用户在不同的视图间切换,...
本项目“可以横向拖动的TabHost_Android”显然着重于实现一种创新的用户体验,让用户可以通过水平滑动来切换不同的Tab。这个功能在很多现代应用中都很常见,例如社交媒体应用、新闻阅读器等,能够提供更加直观和流畅...
可以横向拖动的TabHost