看到很多热门的Android程序(如:新浪微博、腾讯微博、京东商城、淘宝、当当等等)使用选项卡风格作为程序界面的主框架结构,而Android的选项卡控件默认是按钮在上方的。我在网上看到有多种实现方法,这里提供一种个人觉得比较简单的。由于我对Android开发所知甚少,方法的优劣目前不好评价,欢迎各位提供更好的思路。
主要原理:设置 TabWidget 控件的 android:layout_alignParentBottom="true" 实现。
main.xml
<?xml version="1.0" encoding="utf-8"?>
<TabHost android:
    android:orientation="vertical" android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <RelativeLayout android:orientation="vertical"
        android:layout_width="fill_parent" android:layout_height="fill_parent">
        <TabWidget android:
            android:layout_width="fill_parent" android:layout_height="wrap_content"
            android:layout_alignParentBottom="true" />
        <FrameLayout android:
            android:layout_width="fill_parent" android:layout_height="fill_parent">
            <LinearLayout android:
                android:layout_width="fill_parent" android:layout_height="fill_parent"
                androidrientation="vertical">
                <TextView android:
                    android:layout_height="wrap_content" android:text="@string/textView_1" />
            </LinearLayout>
            <LinearLayout android:
                android:layout_width="fill_parent" android:layout_height="fill_parent"
                androidrientation="vertical">
                <TextView android:
                    android:layout_height="wrap_content" android:text="@string/textView_2" />
            </LinearLayout>
            <LinearLayout android:
                android:layout_width="fill_parent" android:layout_height="fill_parent"
                androidrientation="vertical">
                <TextView android:
                    android:layout_height="wrap_content" android:text="@string/textView_3" />
            </LinearLayout>
            <LinearLayout android:
                android:layout_width="fill_parent" android:layout_height="fill_parent"
                androidrientation="vertical">
                <TextView android:
                    android:layout_height="wrap_content" android:text="@string/textView_4" />
            </LinearLayout>
        </FrameLayout>
    </RelativeLayout>
</TabHost>
zhnews.java
view sourceprint?
package net.zhnews.android;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TabHost;
public class zhnews extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        setContentView(R.layout.main);
        setTitle("珠海新闻网Android客户端");
        TabHost tabs = (TabHost) findViewById(R.id.tabhost);
        tabs.setup();
        TabHost.TabSpec spec = tabs.newTabSpec("tab1");
        spec.setContent(R.id.tab1);
        spec.setIndicator("新闻");
        tabs.addTab(spec);
        spec = tabs.newTabSpec("tab2");
        spec.setContent(R.id.tab2);
        spec.setIndicator("搜联社");
        tabs.addTab(spec);
        spec = tabs.newTabSpec("tab3");
        spec.setContent(R.id.tab3);
        spec.setIndicator("影像");
        tabs.addTab(spec);
        spec = tabs.newTabSpec("tab4");
        spec.setContent(R.id.tab4);
        spec.setIndicator("设置");
        tabs.addTab(spec);
        tabs.setCurrentTab(0);
    }
}

相关文章:

  • 2022-12-23
  • 2021-10-14
  • 2021-11-18
  • 2021-11-18
  • 2021-06-19
  • 2021-06-06
猜你喜欢
  • 2021-10-22
  • 2021-07-05
  • 2021-07-08
  • 2021-12-20
  • 2022-12-23
  • 2021-12-10
  • 2022-01-24
相关资源
相似解决方案