gpt4 book ai didi

android EditText 融入背景

转载 作者:塔克拉玛干 更新时间:2023-11-02 18:53:31 25 4
gpt4 key购买 nike

我的应用使用 Theme.Holo.Light.DarkActionBar 作为父主题。

当我使用我的 Android 3.2 平板电脑模拟器时,几乎看不到 EditText 形状。看起来它正试图在白色上绘制白色。在这里看到:

enter image description here

当我在我的 Android 4.0 平板电脑模拟器上使用它时,EditText 形状看起来很好。您可以看到沿着 EditText 底部的深灰色线。如果您查看上图,您将几乎看不到在与浅灰色背景水印交叉的同一位置有一条白线。

enter image description here

这是我在布局中的 EditText:

<EditText
android:id="@+id/fieldName"
style="@style/PlayerDetails.Field"
android:capitalize="words" />

这是样式:

<style name="PlayerDetails.Field">
<item name="android:layout_weight">0.65</item>
<item name="android:paddingLeft">10dp</item>
<item name="android:layout_width">0dp</item>
<item name="android:layout_height">fill_parent</item>
<item name="android:layout_marginLeft">10dp</item>
</style>

为什么我的 EditText 画错了颜色?我没有覆盖绘图代码或背景可绘制对象。

最佳答案

其他答案实际上并不是我的问题的解决方案,我也从来没有弄清楚是什么真正导致了这个问题。然而,这就是我解决它的方法:我的解决方法是从 Ice Cream Sandwich 复制 .​​9.png 和 EditText 小部件的样式,并硬编码到我的 Honeycomb 和 Ice Cream Sandwich 应用程序中。

编辑:

我创建了一个名为 res/drawable-nodpi/edit_text_holo_light.xml 的文件,内容如下:

<?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>

然后我在我的 styles.xml 中创建了一个样式来设置:

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

然后我从 android sdk 中复制了 .9.png 文件并将它们放在 res/drawable-* 中。文件名列在上面的 xml 中。

关于android EditText 融入背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9900825/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com