java - Android - 如何将默认选中的复选框添加到导航抽屉
问题描述
我想在 Navigation Drawer 中添加一个复选框,并且我希望其中一个成为default checked
我正在使用这个:如this answerapp:actionViewClass="android.widget.Switch"
中所建议的那样。
但我不知道如何让其中一个成为默认检查。如果我使用此属性android:checked="true"
,则选中该选项而不是复选框(见图)。
有谁知道如何使其默认检查(如果可能,我只想在 XML 中进行)?
这是我的activity_drawer.xml。
<?xml version="1.0" encoding="utf-8"?>
<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:showIn="navigation_view">
<group
android:checkableBehavior="single">
<item
android:id="@+id/checkboxX-axis"
android:title="Show x-axis"
android:icon="@drawable/ic_x_axis_black_24dp"
app:actionViewClass="android.widget.CheckBox"
android:checked="true"
/>
<item
android:id="@+id/checkboxY-axis"
android:title="Show y-axis"
android:icon="@drawable/ic_y_axis_black_24dp"
app:actionViewClass="android.widget.CheckBox"
/>
<item
android:id="@+id/checkboxZ-axis"
android:title="Show z-axis"
android:icon="@drawable/ic_z_axis_black_24dp"
app:actionViewClass="android.widget.CheckBox"
/>
</group>
</menu>
解决方案
你可以这样做:
MenuItem item = navigation.getMenu().findItem(R.id.checkboxX-axis);
CompoundButton compoundButton = (CompoundButton) item.getActionView();
compoundButton.setChecked(true);
替换navigation
为NavigationView
的名称。
推荐阅读
- pdf - 以编程方式在 PDF 文档上设置跳位顺序选项
- css - PDF分页符导致CSS填充消失
- shell - 使用 sed 使用 shell 从另一个变量更新存储 URL 的变量
- flutter - 如何为 CheckboxListTile 添加删除按钮或长按删除?
- python - 如何使用 ElementTree 提取动态 xml 文件
- ubuntu - STM32 调试错误:在 CubeIDE 和 Ubuntu 21.04 上找不到目标设备
- reactjs - 如何从 Express 服务器上的 React 应用程序获取数据以使用从 API 获取的数据更新元标记
- tsql - MS SQL Server 解析名称以获取第一个和最后一个
- swift - 为什么 CLLocationManager 类是 MapKit 的一部分?
- html - 具有淡入下拉效果的 Angular 和 CSS 动画