问题描述
我正在尝试在工具栏上实现切换按钮。它显示在工具栏上并打开和关闭,但在打开或关闭时没有实现任何功能。我在菜单中有开关按钮如下
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_settings"
android:title="Settings"
app:showAsAction="never"/>
<item
android:id="@+id/switch_button"
android:title="Switch"
app:showAsAction="always"
android:orderInCategory="3"
app:actionViewClass="androidx.appcompat.widget.SwitchCompat" />
<item android:id="@+id/edit"
android:title="search_title"
android:orderInCategory="1"
android:icon="@drawable/edit"
app:showAsAction="always|collapseActionView"
/>
</menu>
这是java文件
case R.id.action_settings:
Toast.makeText(getActivity(),"action settings clicked",Toast.LENGTH_SHORT).show();
break;
case R.id.switch_button:
SwitchCompat switch_state = (SwitchCompat) item.getActionView();
switch_state.setonCheckedchangelistener(new CompoundButton.OnCheckedchangelistener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {
if (isChecked){
Toast.makeText(getActivity(),Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(getActivity(),Toast.LENGTH_SHORT).show();
}
});
正在显示设置的操作 toast,但未显示切换 toast,并且 logcat 中也没有错误。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)