我在下面的xml中有一个浮动操作按钮,可以正常运行
fragment_one.xml
<com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/btnFloatMain"
android:layout_width="80dp"
android:layout_height="80dp"
android:clickable="true"
android:layout_gravity="bottom|right"
android:layout_marginBottom="15dp"
android:layout_marginRight="15dp"
app:maxImageSize="80dp"
app:fabCustomSize="80dp"
app:srcCompat="@drawable/button_float_main"
/>
但是我想在按下时设置浮动操作按钮的按钮状态,所以我在下面创建了xml
button_states_float_main.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
app:maxImageSize="80dp"
app:fabCustomSize="80dp"
app:srcCompat="@drawable/button_float_main_pressed"/>
<item
app:maxImageSize="80dp"
app:fabCustomSize="80dp"
app:srcCompat="@drawable/button_float_main"/>
</selector>
并将我的按钮xml修改为
fragment_one.xml
<com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/btnFloatMain"
android:layout_width="80dp"
android:layout_height="80dp"
android:clickable="true"
android:layout_gravity="bottom|right"
android:layout_marginBottom="15dp"
android:layout_marginRight="15dp"
app:srcCompat="@drawable/button_states_float_main"
/>
但是自从我的应用程序崩溃以来,我认为我的设置方法不正确。
答案 0 :(得分:0)
使用
android:drawable="@drawable/button_float_main_pressed"
代替
app:srcCompat="@drawable/button_float_main_pressed"
在选择器
中