2012-03-14 112 views
2

我試圖在ActionBar的標題下添加陰影。我試圖把屬性在ActionBar上添加一個陰影

<item name="android:textColor">@color/white</item> 
    <item name="android:shadowRadius">1</item> 
    <item name="android:shadowColor">@color/black</item> 
    <item name="android:shadowDy">1</item> 

但雖然textColor工作,陰影不是。我使用ActionBarSherlock 3.5,但我認爲它不適用於本機。

感謝

回答

2

我無法使用本機或ABS backport工作。使用提到的方法here很有效。對於android:customNavigationLayout佈局,您可以使用應用的樣式來調整單個textView。這具有必須在您的活動/基地活動中以編程方式設置標題的缺點。這可以通過從Activity.getTitle()獲取值來完成,如果設置了標題,則操作欄會執行此操作。沒有足夠的時間進一步研究!

ps嗨克里斯!

1

我沒有嘗試過的人,但作爲傑克提到,如果它不能在本地工作,他不會支持它的ABS。

如果你真的想覆蓋它,而這將預先3.2(或4.0 ABS 4.X)只有工作,那麼你可以抓住的res/layout/abs__action_bar_title_item.xml把它放在你的項目和改變:

<com.actionbarsherlock.internal.widget.ScrollingTextView 
     android:id="@+id/abs__action_bar_title" 
     ... 
     android:shadowRadius="1" 
     ... /> 

當然我不推薦這個!因爲它不適用於本地實現。

0

在(本機)ActionBar標題下添加一個影子,從API級別18(Android Jelly Bean 4.3)開始。在API級別19(Android KitKat 4.4)中正常工作。

從模擬器和本機設備開始測試API Level 15(Android Ice Cream Sandwich 4.0.3 - 4.0.4)。

<!-- Settings activity theme --> 
<style name="AppSettingsTheme" parent="android:Theme.Holo.Light"> 
    <!-- Set the action bar custom style --> 
    <item name="android:actionBarStyle">@style/AppActionBar</item> 
</style> 

<!-- Action bar style --> 
<style name="AppActionBar" parent="@android:style/Widget.Holo.ActionBar"> 
    <item name="android:titleTextStyle">@style/AppActionBarTitleText</item> 
    <item name="android:displayOptions">showTitle</item> 
</style> 

<!-- ActionBar title text --> 
<style name="AppActionBarTitleText" 
    parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title"> 
    <item name="android:textColor">@color/white_text</item> 
    <item name="android:shadowColor">@color/text_shadow</item> 
    <item name="android:shadowDx">3</item> 
    <item name="android:shadowDy">3</item> 
    <item name="android:shadowRadius">1.5</item> 
</style> 

這是從API 18仿真器的屏幕截圖:

enter image description here