2013-07-27 39 views
5

,所以我有一個應用程序,是全息光黑暗的動作條,每當我去複製和粘貼東西在一個EditText,圖標是白色的,所以你不能看到他們。屏幕截圖位於下方。有什麼方法可以補救嗎?謝謝! A screenshot of the bug全息光黑暗的動作條顯示全息暗複製和粘貼圖標

+0

你確定你使用的活動場景?由於應用程序上下文不使用/瞭解主題,因此使用應用程序上下文可能會產生類似的效果。 – zapl

+0

我應該在哪裏使用活動上下文而不是應用程序上下文?對不起,我有點困惑。 – ollien

+0

如果您使用的應用程序上下文而構建UI(或明或暗地使用'LayoutInflater','Resources' ......),你得到一個破碎的主題。如果您使用的活動場景('this'內'Activity' /'.getActivity()''裏面Fragment')一切都應該罰款。這只是一個猜測,你可能會使用錯誤的上下文。 – zapl

回答

0

我有這個問題,Theme.AppCompat.Light.DarkActionBar主題,我認爲這是一個錯誤。我試着用下面的方法修改的背景,我的風格(你可以從http://jgilfelt.github.io/android-actionbarstylegenerator/獲得可繪製):

<!-- styles.xml --> 
<style name="Theme.MyThemeLightBase" parent="@style/Theme.AppCompat.Light.DarkActionBar"> 
    <item name="actionModeBackground">@drawable/cab_background_top</item> 
    <item name="android:actionModeBackground">@drawable/cab_background_top</item> 
</style> 

而與此:

<!-- styles.xml --> 
<style name="Theme.MyThemeLightBase" parent="@style/Theme.AppCompat.Light.DarkActionBar"> 
    <item name="actionModeStyle">@style/my_action_mode_style</item> 
    <item name="android:actionModeStyle">@style/my_action_mode_style</item> 
</style> 
<style name="my_action_mode_style" parent="@style/Widget.AppCompat.Light.ActionMode.Inverse"> 
    <item name="android:background">@drawable/cab_background_top</item> 
</style> 

但沒有這個解決方案,似乎工作(請讓我知道如果你最終能更改背景),所以我決定讓白色背景,只是更改圖標:

<!-- styles.xml --> 
<style name="Theme.MyThemeLight" parent="Theme.MyThemeLightBase"> 
    <item name="actionModeSelectAllDrawable">@drawable/ic_menu_selectall_holo_light</item> 
    <item name="android:actionModeSelectAllDrawable">@drawable/ic_menu_selectall_holo_light</item> 
    <item name="actionModeCutDrawable">@drawable/ic_menu_cut_holo_light</item> 
    <item name="android:actionModeCutDrawable">@drawable/ic_menu_cut_holo_light</item> 
    <item name="actionModeCopyDrawable">@drawable/ic_menu_copy_holo_light</item> 
    <item name="android:actionModeCopyDrawable">@drawable/ic_menu_copy_holo_light</item> 
    <item name="android:actionModePasteDrawable">@drawable/ic_menu_paste_holo_light</item> 
    <item name="actionModePasteDrawable">@drawable/ic_menu_paste_holo_light</item> 
</style> 

注意:您需要指定一個styles.xml文件值,值-V11和值-V14,因爲有些屬性不需要添加或不添加'android'preffix。檢查文檔API級別:http://developer.android.com/reference/android/R.attr.html#actionModeCopyDrawable