我正在構建一個應用程序,它有一個最多四個選項卡的動作欄。 我想添加一個像web瀏覽器關閉按鈕到動作欄選項卡。如何添加一個關閉按鈕到動作欄選項卡
我知道如何動態添加/刪除選項卡。 我一直在尋找如何添加關閉按鈕,但我什麼也找不到!
如果您知道解決方案或教程,請告訴我。 或者是(加入關閉按鈕到標籤)一個不好的做法?
感謝,
我的環境: 的是Android 4.4.2(API級別19)
我正在構建一個應用程序,它有一個最多四個選項卡的動作欄。 我想添加一個像web瀏覽器關閉按鈕到動作欄選項卡。如何添加一個關閉按鈕到動作欄選項卡
我知道如何動態添加/刪除選項卡。 我一直在尋找如何添加關閉按鈕,但我什麼也找不到!
如果您知道解決方案或教程,請告訴我。 或者是(加入關閉按鈕到標籤)一個不好的做法?
感謝,
我的環境: 的是Android 4.4.2(API級別19)
我找到了解決辦法。 我可以使用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