我的 Android 应用程序有一个 webview,它显示来自远程网站的 HTML 表单。 HTML 表单包括一个带有多个 OPTION 元素的 SELECT 元素。触摸 SELECT 元素时,将显示 OPTION 元素列表。到目前为止,一切听起来都很正常。
现在,当使用 Google API 15 及更低版本时,Android 会在白色背景上显示带有黑色文本的选项列表。在 Google API 17 及更高版本中,它们以白色背景上的白色文本显示,因此在单击其中一个选项之前无法看到它们。
截图:http://i4.photobucket.com/albums/y140/primehalo/API15-vs-API17-940x640_zps26849382.png
我已经在真实手机和模拟器上对此进行了测试,两者都发生了这种情况。如果我使用默认的 Android 网络浏览器访问 web View 使用的相同 URL,则选项列表显示为深灰色背景上的白色文本。
截图:http://i4.photobucket.com/albums/y140/primehalo/webbrowser-470x640_zpsc3d64b65.png
有人知道为什么它会在我的 WebView 中显示白底白字吗?或者关于去哪里寻找的任何想法?
最佳答案
我发现我的 style.xml 中设置的文本颜色导致了问题:
<style name="tabText" parent="@android:style/Theme.NoTitleBar">
<item name="android:textColor">#FFFFFF</item>
<item name="android:textSize">18dip</item>
<item name="android:tabWidgetStyle">@style/TabWidget</item>
</style>
当我将 textColor 更改为 #000000 时,文本正确显示,白色背景上的黑色文本。但是,这会导致 SELECT 元素丢失其边框。根本不设置 textColor 似乎可以使其按预期工作。
关于对于 API 17 及更高版本,Web View 中的 Android 选择下拉组合框显示为白色背景上的白色文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24272068/