1

如何为 ICS 中带有 Holo 主题的 EditText 设置样式,以使其与 API 级别 8 的设备兼容。

我尝试了以下代码,但它与 API 8 不兼容。

<EditText
        android:id="@+id/editText1"
        style="@android:style/Widget.Holo.EditText"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"/>
4

2 回答 2

7

您可以使用HoloEveryWhere

或者你可以这样做:

<style name="MyTheme" parent="@android:style/Theme">
    <item name="android:editTextBackground">@drawable/my_edittext</item>
</style>

my_edittext.xml:

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <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" />
    <item 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>

您可以在 SDK 文件夹中找到上述可绘制对象。

于 2013-04-18T22:49:40.200 回答
1

自己创建类似的设计。您可以使用 api 16 的资源。您可以在 /android-sdks/platforms/android-16/data/res/ 文件夹中找到这些资源

于 2013-04-18T22:51:49.267 回答