我想在TextView的背景中使用png图像添加一些涟漪效果并找到this Post
我有action_darwer.xml drawable as
if($id == 5){
xdebug_break();
}
并将其设置为TextView为
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="?attr/selectableItemBackgroundBorderless" android:state_pressed="true" /> <!-- pressed -->
<item android:drawable="@drawable/drawer" /> <!-- default -->
</selector>
根本不起作用而且发出错误
<TextView android:id="@+id/action_drawer"
android:layout_marginLeft="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/action_drawer"/>
如何解决这个问题?任何建议将不胜感激。谢谢。
答案 0 :(得分:1)
发生StackOverflowError是因为应用程序过于冗长。
首先修改 background
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_pressed="true"
android:drawable="@drawable/pressed/> // Press State
<item android:state_focused="true"
android:drawable="@drawable/focused"/> // Focused
<item android:drawable="@drawable/drawer"/> // Default State
</selector>
有关详细信息,请查看 How can I modify ripple color when using ?
答案 1 :(得分:0)
就我而言, 你无法定义 ?attr / selectableItemBackgroundBorderless as drawable,那就是崩溃的地方。 将其更改为其他可绘制的
例如:
<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/pressed" android:state_pressed="true" /> <!-- pressed -->
<item android:drawable="@drawable/drawer" /> <!-- default -->
</selector>