2013-08-24 2 views
0

Android 아셋 스튜디오를 사용하여 액션 바 스타일을 생성했지만 Studio에서 할 수 없었던 몇 가지 변경을하고 싶기 때문에 생성 된 테마는 많이 편집했지만 일들은 그냥 무시 당했고, 나는 일들이 어떻게 작동하는지 알 수 없습니다. 이 예는 다음과 같습니다 `Android Asset Studio에서 생성 된 액션 바 테마 변경

<style name="Theme.Myactionbar" parent="@style/Theme.AppCompat.Light"> 
    <item name="actionBarItemBackground">@drawable/selectable_background_myactionbar</item> 
    <item name="popupMenuStyle">@style/PopupMenu.Myactionbar</item> 
    <item name="dropDownListViewStyle">@style/DropDownListView.Myactionbar</item> 
    <item name="actionBarTabStyle">@style/ActionBarTabStyle.Myactionbar</item> 
    <item name="actionDropDownStyle">@style/DropDownNav.Myactionbar</item> 
    <item name="actionBarStyle">@style/ActionBar.Solid.Myactionbar</item> 
    <item name="actionModeBackground">@drawable/cab_background_top_myactionbar</item> 
    <item name="actionModeSplitBackground">@drawable/cab_background_bottom_myactionbar</item> 
    <item name="actionModeCloseButtonStyle">@style/ActionButton.CloseMode.Myactionbar</item> 


</style> 

<style name="ActionBar.Solid.Myactionbar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid"> 
    <item name="background">@drawable/ab_solid_myactionbar</item> //THIS IS GREEN 
    <item name="backgroundStacked">@drawable/ab_solid_myactionbar</item>//THIS IS GREEN 
    <item name="backgroundSplit">@drawable/ab_bottom_solid_myactionbar</item>//THIS IS GREEN 
    <item name="progressBarStyle">@style/ProgressBar.Myactionbar</item> 
</style> 

<style name="ActionBar.Transparent.Myactionbar" parent="@style/Widget.AppCompat.Light.ActionBar"> 
    <item name="background">@drawable/ab_transparent_myactionbar</item> 
    <item name="progressBarStyle">@style/ProgressBar.Myactionbar</item> 
</style> 

<style name="PopupMenu.Myactionbar" parent="@style/Widget.AppCompat.Light.PopupMenu"> 
    <item name="android:popupBackground">@drawable/menu_dropdown_panel_example </item> 
</style> 

<style name="DropDownListView.Myactionbar" parent="@style/Widget.AppCompat.Light.ListView.DropDown"> 
    <item name="android:listSelector">@drawable/selectable_background_myactionbar</item> 
</style> 

<style name="ActionBarTabStyle.Myactionbar" parent="@style/Widget.AppCompat.Light.ActionBar.TabView"> 
    <item name="android:background">@drawable/tab_indicator_ab_myactionbar</item> 
</style> 

<style name="DropDownNav.Myactionbar" parent="@style/Widget.AppCompat.Light.Spinner.DropDown.ActionBar"> 
    <item name="android:background">@drawable/spinner_background_ab_myactionbar</item> 
    <item name="android:popupBackground">@drawable/menu_dropdown_panel_myactionbar</item> 
    <item name="android:dropDownSelector">@drawable/selectable_background_myactionbar</item> 
</style> 

<style name="ProgressBar.Myactionbar" parent="@style/Widget.AppCompat.ProgressBar.Horizontal"> 
    <item name="android:progressDrawable">@drawable/progress_horizontal_myactionbar</item> 
</style> 

<style name="ActionButton.CloseMode.Myactionbar" parent="@style/Widget.AppCompat.Light.ActionButton.CloseMode"> 
    <item name="android:background">@drawable/btn_cab_done_myactionbar</item> 
</style> 

<!-- this style is only referenced in a Light.DarkActionBar based theme --> 
<style name="Theme.Myactionbar.Widget" parent="@style/Theme.AppCompat"> 
    <item name="popupMenuStyle">@style/PopupMenu.Myactionbar</item> 
    <item name="dropDownListViewStyle">@style/DropDownListView.Myactionbar</item> 
</style> 

모든 것이 생성기 같았다,하지만 난 간단한 변화를 시도, 즉 색상, 그래서 스타일 이름 = ActionBar.Solid.Myactionbar을 편집 넣어 거기에 다른 생성 된 스타일에서 다른 drawables 있습니다.

<style name="Theme.Myactionbar" parent="@style/Theme.AppCompat.Light"> 
    <item name="actionBarItemBackground">@drawable/selectable_background_myactionbar</item> 
    <item name="popupMenuStyle">@style/PopupMenu.Myactionbar</item> 
    <item name="dropDownListViewStyle">@style/DropDownListView.Myactionbar</item> 
    <item name="actionBarTabStyle">@style/ActionBarTabStyle.Myactionbar</item> 
    <item name="actionDropDownStyle">@style/DropDownNav.Myactionbar</item> 
    <item name="actionBarStyle">@style/ActionBar.Solid.Myactionbar</item> 
    <item name="actionModeBackground">@drawable/cab_background_top_myactionbar</item> 
    <item name="actionModeSplitBackground">@drawable/cab_background_bottom_myactionbar</item> 
    <item name="actionModeCloseButtonStyle">@style/ActionButton.CloseMode.Myactionbar</item> 


</style> 

<style name="ActionBar.Solid.Myactionbar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid"> 
    <item name="background">@drawable/ab_solid_example</item> 
    <item name="backgroundStacked">@drawable/ab_stacked_solid_example</item> 
    <item name="backgroundSplit">@drawable/ab_bottom_solid_myactionbar</item> 
    <item name="progressBarStyle">@style/ProgressBar.Myactionbar</item> 
</style> 

아무것도하지만 앞으로 일어날, 회색 있어야 드로어 블을 변경 : 그것은이처럼 보였다. 나는 누군가가 전에 이것을했는지, 그리고 왜 이것이 작동하지 않는지 방황하고 있었습니까? 고마워요

답변

1

알았어요. API 14 레벨 이상의 스타일에 대한 값 -v14 폴더가 있으므로이 값도 변경해야합니다.