【发布时间】:2012-02-28 19:11:15
【问题描述】:
我在特定设备上遇到问题,即 Android 2.3.x 上的 HTC EVO。我认为这可能是 HTC Sense 特有的问题。
我基本上有一个带有透明背景 (#00000000) 和白色文本的 EditText,设置为允许输入电子邮件地址(inputType 为 textEmailAddress)。
问题:但是,当用户写邮件地址时,文本是黑色的,因此无法阅读。
当用户将焦点转移到另一个视图元素时,文本会正确地变回白色。
如果用户重新关注EditText,之前输入的文本仍然是白色的,但任何新的文本都是黑色的。
如果我将 inputType 从textEmailAddress 更改为没有,或者textFilter,文本会正确呈现...它仍然是黑色的,但它周围有一个突出显示(由于提供的“建议”键盘 - 未显示在 textEmailAddress 类型上。)因此,它是可读的。缺点是没有电子邮件输入法(键盘上带有“@”)。
我希望我的文本始终可读(即书写时为白色)并具有正确的(电子邮件)条目。建议与否,没关系 - 它必须是可读的。
使用的EditText 很简单:
<EditText
android:id="@+id/fieldEmail"
android:layout_width="match_parent"
android:layout_height="42dp"
android:layout_marginTop="10dp"
android:hint="Enter your email"
android:textSize="16dp"
android:textColor="#ffffffff"
android:textColorHint="#ffffffff"
android:textColorLink="#ffffffff"
android:background="#00000000"
android:inputType="textEmailAddress">
</EditText>
有什么建议吗?我尝试了几件事,包括更改各种颜色(以防它试图“猜测”选择突出显示的文本颜色)但没有任何效果;无法设置正在写入的文本的颜色...它总是黑色的。
【问题讨论】:
-
我也有同样的问题。你找到比 TextWatcher(这里的答案之一)方法更好的方法了吗?
-
没有。最后我只使用了常规的 inputType。 :(
标签: android android-edittext sense