所以我在视图中有一个溢出菜单按钮,我已将其转换为编辑按钮。这是按钮的 XML 代码:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context=".HomeActivity">
<item android:id="@+id/action_edit"
android:title="Edit"
android:icon="@drawable/editbutton"
app:showAsAction="always"/>
</menu>
我还在按下编辑按钮时创建了一个 java 函数,如下所示:
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_edit:
floatIn.start();
fabImageButton.setTranslationX(-1 * fabOffset);
populateAnimators();
openAnimSet.start();
return true;
}
return super.onOptionsItemSelected(item);
}
我想要做的是当按下编辑按钮时,在 onOptionsItemSelected 内的 case 语句中是更改菜单按钮的可绘制对象(从编辑可绘制对象到关闭可绘制对象),然后更改属性,以便如果按钮是当新的drawable显示时再次按下,会触发一组不同的java代码。我正在考虑以编程方式更改 ID,然后添加另一个 case 语句?当按下关闭编辑按钮时,需要将其转换回原始按钮。
谢谢
卡比尔