当前位置: 首页 > news >正文

Android10 Settings系列(三)根据需求动态添加删除一级菜单、二级菜单的设置项

一 、背景

当时遇到定制需求,需要根据实际需要隐藏Settings的菜单项,于是开始了寻找方法

二 、准备工作

在看了一下源码,经过尝试后,确认生效后,就简单说明一下Settings中布局中主要组成元素

Settings中的菜单项是由 PreferenceScreen 和Preference组成的。其中PreferenceScreen 类似于我们平常使用布局中的layout,而Preference 相当于布局中的控件。PreferenceScreen和Preference 中存在一个key的属性类似于 我们使用系统空间中的id。在Settings中,通过key去定位所在的Preference。比如下面的实例,是系统菜单中的布局

packages\apps\Settings\res\xml\system_dashboard_fragment.xml

这里边要注意的是 Preference 中除了key的存在还有两部分比较重要,那就是 android:fragment和settings:controller这两种标签,一个表示点击该菜单项跳转的fragment ,另一个表示这个菜单项对应的控制类。

<?xml version="1.0
http://www.lryc.cn/news/102464.html

相关文章:

  • 51单片机——串行口通信
  • 洛谷题单 Part 6.7.1 矩阵
  • Spring中c3p0与dbcp配置
  • Flutter 添加 example流程
  • 数据治理8种方法
  • 大模型成互联网真正蜕变的标志,亦是各种新技术开始衍生的标志
  • 指针进阶详解---C语言
  • 设计模式思考,简单工厂模式和策略模式的区别?
  • Java - sh 脚本启动 jar 包等服务 - sh 脚本模板 - 适用于任何类似的服务启动
  • MySQL高级篇第5章(存储引擎)
  • openssl 命令行国密sm2的签名验签操作
  • 开源代码分享(9)—面向100%清洁能源的发输电系统扩展规划(附matlab代码)
  • 为 Google Play 即将推出基于区块链的内容政策做好准备
  • 查找-多路查找详解篇
  • css设置八等分圆
  • 「教程」如何使用一套代码在多种程序中接入天气预警API
  • (MYSQL)数据库服务端的启动与停止,登录与退出
  • 数学建模学习(8):单目标和多目标规划
  • 【Vscode | R | Win】R Markdown转html记录-Win
  • 【Lua语法】字符串操作、字符串中的方法
  • Linux 终端生成二维码
  • 子组件未抛出事件 父组件如何通过$refs监听子组件中数据的变化
  • 【C++】STL——stack的介绍和使用、stack的push和pop函数介绍和使用、stack的其他成员函数
  • 基于BIM+AI的建筑能源优化模型【神经网络】
  • #P0998. [NOIP2007普及组] 守望者的逃离
  • vue3+ts+elementui-plus二次封装弹框
  • ffmpeg批量分割视频解决视频前几秒黑屏的问题解决
  • nodejs + express 调用本地 python程序
  • 微信小程序代码优化3个小技巧
  • 某行动态cookie反爬虫分析