即使我的应用程序中包含Android支持v7
添加Android:背景=“?Android:attr/可选项目后台”
使我的IDE,Eclipse抛出一个错误(阻止我编译),通知我selectableItemBackground只适用于min Api 11及以上版本。
如何在XML中将该属性添加到背景中?
假设从更高的库复制和粘贴不是解决方案
不是这方面的专家,但似乎你需要基于平台版本的主题。我认为官方指南很好地解释了这个过程。
您必须为每个版本创建不同的XML文件,并将它们保存在res/values-v7
,res/values-v11
等中。然后将这些样式用于视图。像这样:
在< code>res/values-v7中:
<style name="LightThemeSelector" parent="android:Theme.Light">
...
</style>
在分辨率/值-v11 中
:
<style name="LightThemeSelector" parent="android:Theme.Holo.Light">
<item name="selectableItemBackground">?android:attr/selectableItemBackground</item>
...
</style>
然后使用视图样式:
<TextView
style="@style/LightThemeSelector"
android:text="@string/hello" />
希望这有帮助。干杯。
这里是selectedItemBackground。您可以在/platforms/Android-14/data/RES/themes . XML中找到它
<selector xmlns:android="http://schemas.android.com/apk/res/android"
android:exitFadeDuration="@android:integer/config_mediumAnimTime">
<item android:state_window_focused="false" android:drawable="@color/transparent" />
<!-- Even though these two point to the same resource, have two states so the drawable will invalidate itself when coming out of pressed state. -->
<item android:state_focused="true" android:state_enabled="false" android:state_pressed="true" android:drawable="@drawable/list_selector_background_disabled" />
<item android:state_focused="true" android:state_enabled="false" android:drawable="@drawable/list_selector_background_disabled" />
<item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/list_selector_background_transition" />
<item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/list_selector_background_transition" />
<item android:state_focused="true" android:drawable="@drawable/list_selector_background_focused" />
<item android:drawable="@color/transparent" />
</selector>
您可以在Android SDK 目录中找到可绘制内容
../platforms/android-14/data
由于该属性是在库中定义的(支持 v7),因此您可以将其用作用户定义的属性:即没有 android:
前缀:
android:background="?attr/selectableItemBackground"
您看到的错误指出?android:attr/selectableItemBackground
适用于API版本
我想向特定的电子邮件ID发送一些消息。我将设置为地址并尝试发送消息。它在Gmail应用程序中运行良好。但它在邮件应用程序中工作不正常,尤其是在Nexus 7(HTC one V)中。背后的原因是什么? 源代码 更新的代码 Intent emailIntent=new Intent(android.content.Intent.ACTION_SENDTO); emailIntent.setType(
问题内容: 有人可以帮助我 如何在Android中使用speex或jspeex吗? 我进行了很多搜索,但找不到任何地方。code.google.com/ android中 与此相关的问题很多,但都没有答案。这里的这个问题也没有得到很好的回答,因为我对此的另一个问题是Android中的解码speex编码的字节数组。因此,如果您对此有所了解,请向我提供有关此信息。 我需要使用此编解码器对音频文件的字节
根据Android中关于和的文档,TLS v1。1和v1。API级别16支持2个协议,但默认情况下不启用。http://developer.android.com/reference/javax/net/ssl/SSLSocket.html http://developer.android.com/reference/javax/net/ssl/SSLContext.html 如何在运行Andro
我正在尝试为中的每一行设置 突出显示。 我有一个可绘制的资源文件: 我已经在三星Galaxy S5设备上进行了测试,该设备可以正常工作。但是,当我在安装了Android 4.4.2的中兴Compel设备上进行测试时,它不起作用。 我的应用程序针对API 15及更高版本。 任何想法为什么这样: 不能在Android4.4.2设备上工作? 日志中的错误: 由以下原因引起:组织:二进制 XML 文件行
在Android P中获取错误时,直接访问此部分:
我有一个嵌入jetty服务器的Gradle Java项目。我想为同一个项目启用web应用程序支持。 Intellij IDEA帮助说明如何在下面的链接中为现有项目启用。https://www.jetbrains.com/help/idea/2016.1/enabling-web-application-support.html#d1788100e258 但是这个过程使用了Intellij IDEA