gpt4 book ai didi

带有复选框的Java android NavigationView

转载 作者:行者123 更新时间:2023-11-29 19:09:14 25 4
gpt4 key购买 nike

我想用 checkboxswitch 创建一个 NavigationView,我只想在我的导航到项目切换中有这个功能,它应该像这样工作:我将一个开关转到另一个开关,它变为关闭状态。我做了一个开关是这样的:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="match_parent"
android:layout_height="match_parent">

<android.support.v7.widget.SwitchCompat
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:id="@+id/switchs"
/>
</LinearLayout>

<?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">

<group android:checkableBehavior="single">
<item
android:id="@+id/nav_menu1"
android:icon="@mipmap/ic_launcher"
android:title="Menu 1" />
<item
android:id="@+id/nav_menu2"
android:icon="@mipmap/ic_launcher"
android:title="Menu 2" />
<item
android:id="@+id/nav_menu3"
app:actionLayout="@layout/action_view_switch"
android:icon="@mipmap/ic_launcher"
android:title="Menu 3" />
<item
android:id="@+id/nav_menu4"
app:actionLayout="@layout/action_view_switch"
android:icon="@mipmap/ic_launcher"
android:title="Menu 4" />
</group>

</menu>

但我不能有一个值或状态开关,也不能有一个监听器来查看更改状态

最佳答案

首先创建一个布局 action_view_checkbox.xml 如下

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">

<TextView
android:layout_centerVertical="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="@+id/checkbox" />

<android.support.v7.widget.AppCompatCheckBox
android:id="@+id/checkbox"
android:layout_centerVertical="true"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:text="" />
</RelativeLayout>

并将布局作为一项添加到菜单中

<menu xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/check_box_menu"
app:actionLayout="@layout/action_view_checkbox"
android:title="Title" />
</menu>

并检查点击事件为

Menu menu = navigationView.getMenu();
MenuItem menuItem = menu.findItem(R.id.check_box_menu);
View actionView = MenuItemCompat.getActionView(menuItem);
actionView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

}
});

关于带有复选框的Java android NavigationView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45976851/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com