Android简单实现屏幕下方Tab菜单的方法

前端技术 2023/09/07 Android

本文实例讲述了Android简单实现屏幕下方Tab菜单的方法。分享给大家供大家参考,具体如下:

看到很多热门的Android程序(如:新浪微博、腾讯微博、京东商城、淘宝、当当等等)使用选项卡风格作为程序界面的主框架结构,而Android的选项卡控件默认是按钮在上方的。我在网上看到有多种实现方法,这里提供一种个人觉得比较简单的。由于我对Android开发所知甚少,方法的优劣目前不好评价,欢迎各位提供更好的思路。

主要原理:设置 TabWidget 控件的 android:layout_alignParentBottom=\"true\" 实现。

main.xml:

<?xml version=\"1.0\" encoding=\"utf-8\"?>
<TabHost android:id=\"@+id/tabhost\" xmlns:android=\"http://schemas.android.com/apk/res/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:id=\"@android:id/tabs\"
      android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\"
      android:layout_alignParentBottom=\"true\" />
    <FrameLayout android:id=\"@android:id/tabcontent\"
      android:layout_width=\"fill_parent\" android:layout_height=\"fill_parent\">
      <LinearLayout android:id=\"@+id/tab1\"
        android:layout_width=\"fill_parent\" android:layout_height=\"fill_parent\"
        androidrientation=\"vertical\">
        <TextView android:id=\"@+id/view1\" android:layout_width=\"wrap_content\"
          android:layout_height=\"wrap_content\" android:text=\"@string/textView_1\" />
      </LinearLayout>
      <LinearLayout android:id=\"@+id/tab2\"
        android:layout_width=\"fill_parent\" android:layout_height=\"fill_parent\"
        androidrientation=\"vertical\">
        <TextView android:id=\"@+id/view2\" android:layout_width=\"wrap_content\"
          android:layout_height=\"wrap_content\" android:text=\"@string/textView_2\" />
      </LinearLayout>
      <LinearLayout android:id=\"@+id/tab3\"
        android:layout_width=\"fill_parent\" android:layout_height=\"fill_parent\"
        androidrientation=\"vertical\">
        <TextView android:id=\"@+id/view3\" android:layout_width=\"wrap_content\"
          android:layout_height=\"wrap_content\" android:text=\"@string/textView_3\" />
      </LinearLayout>
      <LinearLayout android:id=\"@+id/tab4\"
        android:layout_width=\"fill_parent\" android:layout_height=\"fill_parent\"
        androidrientation=\"vertical\">
        <TextView android:id=\"@+id/view4\" android:layout_width=\"wrap_content\"
          android:layout_height=\"wrap_content\" android:text=\"@string/textView_4\" />
      </LinearLayout>
    </FrameLayout>
  </RelativeLayout>
</TabHost>

zhnews.java:

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);
  }
}

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android操作SQLite数据库技巧总结》、《Android操作json格式数据技巧总结》、《Android数据库操作技巧总结》、《Android文件操作技巧汇总》、《Android编程开发之SD卡操作方法汇总》、《Android资源操作技巧汇总》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。

本文地址:https://www.stayed.cn/item/20097

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。