2014-10-08 35 views
-1

我正在構建一個應用程序,它有一個最多四個選項卡的動作欄。 我想添加一個像web瀏覽器關閉按鈕到動作欄選項卡。如何添加一個關閉按鈕到動作欄選項卡

我知道如何動態添加/刪除選項卡。 我一直在尋找如何添加關閉按鈕,但我什麼也找不到!

如果您知道解決方案或教程,請告訴我。 或者是(加入關閉按鈕到標籤)一個不好的做法?

感謝,

我的環境: 的是Android 4.4.2(API級別19)

回答

0

我找到了解決辦法。 我可以使用ActionBar.Tab#setCustomView方法解決我的問題。 它可以添加您對操作欄選項卡的視圖。

我的代碼是:

ActionBar actionBar = getSupportActionBar(); 

actionBar.addTab(actionBar 
      .newTab() 
      .setCustomView(R.layout.tab_title) 
      .setTabListener(new MainTabListener<TabFragment>(this, "myTab", TabFragment.class 
      ))); 

更多添加標籤來操作欄的詳細信息可以在這裏找到: http://developer.android.com/guide/topics/ui/actionbar.html#Tabs

例如,我tab_title.xml是:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent"> 

<TextView 
android:id="@+id/title_tab" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:layout_alignParentBottom="true" 
android:layout_alignParentEnd="true" 
android:layout_alignParentLeft="true" 
android:layout_alignParentRight="true" 
android:layout_alignParentStart="true" 
android:layout_alignParentTop="true" 
android:ellipsize="end" 
android:gravity="center" 
android:singleLine="true" 
android:paddingStart="0dp" 
android:paddingLeft="0dp" 
android:paddingEnd="10dp" 
android:paddingRight="10dp" /> 

<TextView 
android:id="@+id/close_tab" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:layout_alignParentBottom="true" 
android:layout_alignParentEnd="true" 
android:layout_alignParentRight="true" 
android:layout_alignParentTop="true" 
android:layout_gravity="fill_vertical" 
android:layout_toLeftOf="@+id/title_tab" 
android:layout_toStartOf="@+id/title_tab" 
android:gravity="center" 
android:text="x" 
android:textSize="10sp" 
android:textStyle="bold" 
android:paddingStart="10dp" 
android:paddingLeft="10dp" 
android:paddingEnd="0dp" 
android:paddingRight="0dp" /> 

</RelativeLayout> 

然後,將關閉按鈕添加到關閉按鈕的TextView中,然後將關閉按鈕添加到操作欄選項卡中。

我希望這篇文章有助於某人。

注意: 如果啓用了設備旋轉時,請注意這個問題: https://code.google.com/p/android/issues/detail?id=43213&can=1&q=screen%20rotate%20tab&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars

相關問題