【问题标题】:How can I get the native Android Editbox如何获得原生的 Android 编辑框
【发布时间】:2011-11-21 06:58:05
【问题描述】:

我使用以下代码在 XML 中创建了一个编辑框:

<EditText
            android:id="@+id/txtEmail"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="50dp"
            android:inputType="textEmailAddress" >            
        </EditText>      

文本框呈现如下:

我怎样才能获得本机 android EditText 聚焦时带有橙色边框、白色背景等?

我尝试添加

android:background="@android:color/white"

但这只会将背景更改为白色。

【问题讨论】:

    标签: android


    【解决方案1】:

    您看到的风格是 Honeycomb (3.0) Android 版本的“原生”风格,特别是新的 Holo-dark 主题。橙色边框和白色背景的外观最后一次使用是在 2.3.* 中,此后一直被抛在后面。

    【讨论】:

    • 哦,哈哈...不知道这一点。我的安卓设备还没有收到更新。谢谢
    • @neutrino 有没有办法在 Android 3.0 之前的设备上显示 Holo 主题?
    【解决方案2】:

    同意neutrino的回答:你看到的风格是Honeycomb (3.0) Android版本的“原生”,特别是新的Holo-dark主题。

    但如果你想要你想要的 EditText,那么你需要在 AndroidManifest.xml 文件中设置样式/主题:

    <activity android:theme="@android:style/Theme.Light">
    

    【讨论】:

      【解决方案3】:

      当我们从布局添加视图时,它会从框架渲染,然后添加我们提供的属性。所以在你的代码中,EditText 是原生的EditText,它因设备而异。因此,如果您想对特定设备进行外观和感觉,请为此创建自己的风格并使用它。

      【讨论】:

        【解决方案4】:

        遇到同样的问题...

        尝试使用:

        EditText usr=(EditText)findViewById(R.id.editText1);
        usr.setBackgroundResource(17301528);
        

        【讨论】:

          【解决方案5】:

          如果你真的想要旧版本的EditText iamges(来自 sdk/android-8/platforms/data/res 文件夹),请将 thema 放在 drawable 文件夹中,从中创建一个 StateListDrawable,然后设置EditText 的背景为 Drawable。但何必呢?让应用用户享受其设备的默认外观。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2010-11-02
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-07-10
            • 1970-01-01
            • 2010-10-12
            相关资源
            最近更新 更多