1

我需要在我的应用程序中创建选项卡我已经使用了以下工作良好...但我需要它显示为选项卡查看 iphone 如何使用 android 1.6 实现它?提前致谢..

<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout
    android:id="@+id/tab"    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" />
    <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" android:orientation="vertical"/>

        <LinearLayout android:id="@+id/tab2" android:layout_width="fill_parent"
         android:layout_height="fill_parent" android:orientation="vertical"/>

这是我的标签看起来像..
但是,我需要删除它们之间的空间我希望它看起来像这样

如果我使用意图在 2 个活动之间切换,请查询 2。第二个活动需要 oncreate 方法是强制性的吗?

4

2 回答 2

2

选项卡.xml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:background="@drawable/tab_background_selector" android:gravity="center"
android:orientation="vertical" android:padding="5dp">
<ImageView android:id="@+id/tab_icon" android:layout_width="30dp"
    android:layout_height="30dp" android:scaleType="fitCenter" />
<TextView android:id="@+id/tab_text" android:layout_width="wrap_content"
    android:layout_height="wrap_content" android:singleLine="true"
    android:textStyle="bold" android:gravity="center_horizontal"
    android:textSize="10sp" android:padding="3dip" android:ellipsize="marquee"
    android:textColor="@drawable/tab_text_selector" />

主要的.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" android:layout_alignParentBottom="true">
    <TabHost android:id="@android:id/tabhost" android:layout_width="fill_parent"
        android:layout_height="fill_parent">
        <LinearLayout android:orientation="vertical"
            android:layout_width="fill_parent" android:layout_height="fill_parent">
            <HorizontalScrollView android:scrollbars="none"
                android:layout_width="fill_parent" android:layout_height="wrap_content">
                <TabWidget android:id="@android:id/tabs" 
                android:layout_alignParentBottom="true"
                    android:layout_width="fill_parent" android:layout_height="wrap_content" />
            </HorizontalScrollView>
            <FrameLayout android:id="@android:id/tabcontent"
                android:layout_width="fill_parent" android:layout_height="fill_parent"
                android:padding="5dp" />
        </LinearLayout>
    </TabHost>
</LinearLayout> 

测试活动.java

setContentView(R.layout.maiin);  
         final TabHost tabHost = (TabHost) getTabHost();
            tabHost.addTab(createTab(MobiintheMorningActivity.class, 
                    "Welcome", "Welcome", R.drawable.icon));
            tabHost.addTab(createTab(SongList.class, 
                    ".Mp3List", ".Mp3List", R.drawable.icon));
            tabHost.addTab(createTab(AboutUs.class, 
                    "AboutUs", "AboutUs", R.drawable.icon));
            tabHost.addTab(createTab(ExtraInfromation.class, 
                    "Extra", "Extra", R.drawable.icon));


            tabHost.setCurrentTab(0);
            tabHost.getTabWidget().getChildAt(0).getLayoutParams().width = 85;
            tabHost.getTabWidget().getChildAt(1).getLayoutParams().width = 85;
            tabHost.getTabWidget().getChildAt(2).getLayoutParams().width = 85;
            tabHost.getTabWidget().getChildAt(3).getLayoutParams().width = 85;        
        }
        private TabSpec createTab(final Class<?> intentClass, final String tag, 
                final String title, final int drawable)
        {
            final Intent intent = new Intent().setClass(this, intentClass);

            final View tab = LayoutInflater.from(getTabHost().getContext()).
                inflate(R.layout.tab, null);
            ((TextView)tab.findViewById(R.id.tab_text)).setText(title);
            ((ImageView)tab.findViewById(R.id.tab_icon)).setImageResource(drawable);

            return getTabHost().newTabSpec(tag).setIndicator(tab).setContent(intent);
        }
    }

这是完整的工作代码:Pragna

于 2011-06-08T08:15:48.087 回答
0
<?xml version="1.0" encoding="utf-8"?>

<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
         android:id="@android:id/tabhost"
         android:layout_width="fill_parent"
         android:layout_height="fill_parent">

    <LinearLayout   android:orientation="vertical"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content">

       <FrameLayout     android:id="@android:id/tabcontent"
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:layout_weight="1"/>

        <TabWidget      android:id="@android:id/tabs"
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:paddingBottom="0dip"/>

    </LinearLayout>

</TabHost>

Use this it will give you look that u r intersted
于 2011-06-08T05:42:41.817 回答