任何人都知道的Facebook是如何做到這一點:
TabHost在Facebook上爲Android
據我所知,我們不能改變tabhost的高度。我猜測他們在tabhost上放置了「Frank Cho」視圖,讓它看起來更短,但我可能是錯的。任何人都知道發生了什麼事?
任何人都知道的Facebook是如何做到這一點:
TabHost在Facebook上爲Android
據我所知,我們不能改變tabhost的高度。我猜測他們在tabhost上放置了「Frank Cho」視圖,讓它看起來更短,但我可能是錯的。任何人都知道發生了什麼事?
你實際上可以有自定義的標籤小部件。您需要將選項卡指示器設置爲一些自定義佈局(使用drawables),並且您應該很好。
下面是一個半例如:
final TabHost host = getTabHost();
final TextView indicator = (TextView) getLayoutInflater().inflate(
R.layout.tab_indicator,
getTabWidget(), false);
indicator.setText("Tab title");
host.addTab(host.newTabSpec("The tab tag")
.setIndicator(indicator)
.setContent([put your content here]));
}
凡tab_indicator佈局可以是這樣的:
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tab_label"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:gravity="center"
android:textSize="14sp"
android:textStyle="bold"
android:minHeight="38dp"
android:background="@drawable/minitab" />
的Minitab的繪製是繪製項目選擇(所以你需要有這個圖片選定,默認,按下和未選中)。 facebook應用程序對默認選項卡使用了一些白色可繪製圖像,未使用選項卡使用了藍色漸變繪製。
檢查出一個完整的工作示例的谷歌IO調度應用:http://code.google.com/p/iosched/(具體的TrackDetailActivity.java)
某些別有用心的人有什麼,我認爲是正確的答案,但刪除了它出於某種原因...
有問題的高度不是TabHost
,而是TabWidget
。
嘗試使用的setIndicator()
版本,需要一個View
而不只是String
或String
加上可繪製資源。雖然我還沒有玩過這個,但我的理解是,它很好地解決了這個問題。
不過要小心,不要使用太難觸摸的標籤。
是的,那就是我 - 我打了太空吧,這篇文章發表得太快了。 – 2010-10-07 00:25:01
謝謝....我現在的問題是選項卡很大,並佔用了太多的屏幕空間,我想讓它們做什麼。 – Sid 2010-10-07 00:54:00
會試試這個......謝謝 – Sid 2010-10-07 00:53:03