2012-05-07 47 views
0

我確定它需要一個簡單的標誌,但我找不到正確的標誌,花了至少2個小時才找到正確的解決方案。希望能得到你上師的幫助。 我想創建一個使用fragmentActivity的兩個選項卡布局。我想爲每個選項卡提供50%的屏幕空間。我能夠做到這一點(見附圖屏幕截圖)下一個障礙是我想要標籤頭,例如黑金的金額應該佔50%,而其他人的金額應該爲50%。 enter image description here片段選項卡標題/標籤大小

我希望我對我的問題很清楚。 :-)

attaching my xml 
<?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" 
    android:background="#EFEFEF" > 

    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:orientation="vertical" > 

     <TabWidget 
      android:id="@android:id/tabs" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center_horizontal" /> 

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

      <FrameLayout 
       android:id="@+id/financial" 
       android:layout_width="0dp" 
       android:layout_height="0dp" 
       android:layout_weight="0" 
       android:tag="@string/financial" /> 

      <FrameLayout 
       android:id="@+id/other" 
       android:layout_width="fill_parent" 
       android:layout_height="0dp" 
       android:layout_weight="1" 
       android:tag="@string/others" /> 
     </FrameLayout> 
    </RelativeLayout> 

</TabHost> 


**The calling xml would be** 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" > 

    <ListView 
     android:id="@+id/listView1" 
     android:layout_width="fill_parent" 
     android:layout_height="48dp" 
     android:layout_alignParentLeft="true" 
     android:layout_below="@+id/textView1" > 
    </ListView> 

    <fragment 
    class="com.......android.activity.AccountsTab" 
     android:id="@+id/tabs_fragment" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_centerInParent="true"/> 
</RelativeLayout> 

加入tab.xml

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="150dp" 
    android:layout_height="@dimen/tab_height" 
    android:background="@drawable/tab_selector" 
    android:gravity="center_horizontal" 
    android:orientation="horizontal" 
    android:padding="@dimen/tab_padding" 
    android:weightSum="0.5" > 

    <TextView 
     android:id="@+id/text" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.5" 
     android:gravity="center_horizontal|center_vertical" 
     android:textColor="@drawable/tab_text_selector" 
     android:textSize="@dimen/text_default" 
     android:textStyle="italic" /> 

</RelativeLayout> 
+0

你的意思是,這兩個標籤應該有相同的大小? – Rookie

+0

@ Raghav是的,都應占用可用的屏幕寬度。另外我想在每個選項卡的左側設置圖標。注意:圖標將有不同的操作。我添加了問題的tab.xml。 – mask

回答

0

我認爲你應該做這樣。

<?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"> 
    <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" 
      > 

      <TabWidget 
       android:id="@android:id/tabs" 
       android:orientation="horizontal" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_weight="0" 
       /> 

      <FrameLayout 
       android:id="@android:id/tabcontent" 
       android:layout_width="0dp" 
       android:layout_height="0dp" 
       android:layout_weight="0"/> 

      <FrameLayout 
       android:id="@+android:id/realtabcontent" 
       android:layout_width="fill_parent" 
       android:layout_height="0dp" 
       android:layout_weight="1"/> 
     </LinearLayout> 
    </TabHost> 
</LinearLayout> 

使用此功能,您可以根據需要添加任意數量的選項卡。

enter image description here 希望你想要這個。

+0

謝謝你的回答,我以其他方式做了,但我嘗試了它併爲我工作。我會標記爲已回答。 – mask