10

我使用ActionBarSherlock是否有可能使ActionBar選項卡高度高於ActionBar高度?如果是這樣,怎麼樣?

在動作條左右高度的標籤類似的問題,我用:

<style name="YourTheme" parent="@android:style/Theme.Holo"> 
    <item name="android:actionBarStyle">@style/blah1</item> 
    <item name="android:actionBarTabStyle">@style/blah2</item> 
    <item name="android:actionBarSize">80dp</item> 
    .. 
</style> 

而且我認爲我可以在每一種風格,而不是

<item name="android:actionBarSize">80dp</item> 

使用這個特定的屬性並從ActionBar選項卡高度單獨調整ActionBar高度。

但它不起作用。

那麼,這是一個我不能重寫的Android設計原理嗎?

標籤必須始終與ActionBar高度相同。

回答

0

我不是100%的,但從我的經驗來看,它不能做到,android不允許。也許這將在未來發生變化,但目前沒有太多可以做到的事情。

希望這會有所幫助!

0

您是否嘗試使用自定義操作欄?您可以使用單獨的佈局完全自定義操作欄。

這個sample會告訴你如何。

0

你可以重寫android設計原則的操作欄,我試過了,它可能適合你。

拷貝到styles.xml文件以下代碼

<style name="ThemeSelector" parent="@android:style/Theme.Holo.Light"> 
    <item name="android:actionBarStyle">@style/myTheme.ActionBar</item> 
</style> 

<style name="myTheme.ActionBar" parent="@android:style/Widget.Holo.Light.ActionBar"> 
    <item name="android:background">imageforactionbar</item> 
    <item name="android:titleTextStyle">@style/myTheme.ActionBar.Text</item> 
    <item name="android:height">60dp</item> 
</style> 

1)將圖像中的可拉伸夾

2)寫入風格主題 'myTheme.ActionBar.Text' 在樣式XML 。

<style name="myTheme.ActionBar.Text" parent="@android:style/TextAppearance"> 
    <item name="android:textColor">@color/white</item> 
    <item name="android:textSize">@dimen/app_head</item> 
</style> 

相應更改清單文件,包括

android:theme="@style/ThemeSelector" 

下應用的標籤。

0

可以重寫操作欄

getWindow()setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.action_bar)。

android:layout_width="@dimen/action_BarWidth" 
android:layout_height="@dimen/action_BarHeight" 
0

不,您不能更改ICS上本機操作欄的大小。原生動作欄的高度始終爲48dip(人像)或40dip(風景)。

但是如果你堅持改變它的高度,你可以實現你自己的操作欄。

0

我們可以動態地從代碼的Java類或主題創建行動起來吧:

第1步:我們可以爲特定的類改變形象,名稱,顏色,高度...等動作吧這是一個過程。

ActionBar actionBar = getActionBar(); 
    // show the action bar title 
    actionBar.setDisplayShowTitleEnabled(true); 
    LayoutParams test = new LayoutParams(LayoutParams.WRAP_CONTENT, 
      LayoutParams.WRAP_CONTENT, Gravity.CENTER | Gravity.CENTER); 
    View actionBarView = LayoutInflater.from(this).inflate(
      R.layout.x, null); // layout which contains your 
              // button. 
    actionBar.setCustomView(actionBarView, test); 
    actionBar.setDisplayShowCustomEnabled(true); 

    SpannableString s = new SpannableString("Test"); 
    s.setSpan(new ForegroundColorSpan(Color.parseColor("#ffffff")), 0, 
      s.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 

    // Update the action bar title with the TypefaceSpan instance 
    actionBar.setTitle(s); 
相關問題