android EditText blends into background

后端 未结 3 1695
小蘑菇
小蘑菇 2020-12-16 02:39

My app uses Theme.Holo.Light.DarkActionBar as the parent theme.

When I use my Android 3.2 tablet emulator, the EditText shape is almost impossible to se

相关标签:
3条回答
  • 2020-12-16 03:22

    You can have an action bar and still see the EditText light grey background watermark if you use themes like below:

    AndroidManifest.xml

    <activity
      android:name=".ClassName"
      android:label="ClassName"
      android:theme="@style/MyTheme" >
    

    styles.xml

    <resources>
      <style name="MyTheme" parent="android:Theme.Holo.Light">
        <item name="android:actionBarStyle">@style/MyActionBar</item>
      </style>
      <style name="MyActionBar" parent="android:Widget.Holo.ActionBar">
        <item name="android:background">@color/black</item>
      </style>
    </resources>
    

    This works for the theme "android:Theme.Holo.Light" but not for the theme "android:Theme.Holo".

    0 讨论(0)
  • 2020-12-16 03:35

    I figure out my issue. By setting theme in application element android:theme="@android:style/Theme" in manifest.xml file.

    <application 
    
    android:label="@string/app_name" 
    
    android:icon="@drawable/logo" 
    
    android:vmSafeMode="false" 
    
    android:theme="@android:style/Theme">
    

    Try this.

    0 讨论(0)
  • 2020-12-16 03:37

    The other answers weren't actually solutions to my problem and I never figured out what was REALLY causing the issue. However, this is how I solved it: My workaround was to copy the .9.pngs and styling for the EditText widget from Ice Cream Sandwich and hardcoded into my app for Honeycomb and Ice Cream Sandwich.

    EDIT:

    I created a file called res/drawable-nodpi/edit_text_holo_light.xml with the following:

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
    
        <item android:state_multiline="true" android:state_window_focused="false" android:state_enabled="true"  android:drawable="@drawable/textfield_multiline_default_holo_light" />
        <item android:state_multiline="true" android:state_window_focused="false" android:state_enabled="false" android:drawable="@drawable/textfield_multiline_disabled_holo_light" />
        <item android:state_multiline="true" android:state_enabled="true" android:state_focused="true" android:drawable="@drawable/textfield_multiline_activated_holo_light" />
        <item android:state_multiline="true" android:state_enabled="true" android:state_activated="true" android:drawable="@drawable/textfield_multiline_focused_holo_light" />
        <item android:state_multiline="true" android:state_enabled="true" android:drawable="@drawable/textfield_multiline_default_holo_light" />
        <item android:state_multiline="true" android:state_focused="true" android:drawable="@drawable/textfield_multiline_disabled_focused_holo_light" />
        <item android:state_multiline="true" android:drawable="@drawable/textfield_multiline_disabled_holo_light" />
    
        <item android:state_window_focused="false" android:state_enabled="true" android:drawable="@drawable/textfield_default_holo_light" />
        <item android:state_window_focused="false" android:state_enabled="false" android:drawable="@drawable/textfield_disabled_holo_light" />
        <item android:state_enabled="true" android:state_focused="true" android:drawable="@drawable/textfield_activated_holo_light" />
        <iten android:state_enabled="true" android:state_activated="true" android:drawable="@drawable/textfield_focused_holo_light" />
        <item android:state_enabled="true" android:drawable="@drawable/textfield_default_holo_light" />
        <item android:state_focused="true" android:drawable="@drawable/textfield_disabled_focused_holo_light" />
        <item android:drawable="@drawable/textfield_disabled_holo_light" />
    </selector>
    

    Then I created a style in my styles.xml to set:

    <item name="android:background">@drawable/edit_text_holo_light</item>
    

    Then I copied the .9.png files from the android sdk and put them in res/drawable-*. The filenames are listed in the above xml.

    0 讨论(0)
提交回复
热议问题