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

Android 布局菜单或按钮图标或Menu/Item设置可见和不可见

设置可见和不可见 即 设置 显示和隐藏;是双向设置;什么情况显示,什么情况隐藏分判断的条件

它不同于删除和屏蔽,删除和屏蔽,覆盖是单向的,不可逆转的。它间接等于单向的隐藏!!!

XML:android:visibility="gone"

android:layout_width="0dp"
 android:layout_height="0dp"

Activity:当前活动

NetWorkShowView.this.setVisibility(View.VISIBLE);

NetWorkShowView.this.setVisibility(View.INVISIBLE);

NetWorkShowView.this.setVisibility(View.GONE);

View:视图

view.setVisibility(View.VISIBLE);

view.setVisibility(View.INVISIBLE);

view.setVisibility(View.GONE);

Button:按钮

Button.setVisibility(View.VISIBLE);

Button.setVisibility(View.INVISIBLE);

Button.setVisibility(View.GONE);

Item:控件

ItemView:

ListItem:

itemView.setVisibility(View.VISIBLE);

itemView.setVisibility(View.INVISIBLE);

itemView.setVisibility(View.GONE);

mItem.setVisibility(View.VISIBLE);

mItem.setVisibility(View.INVISIBLE);

mItem.setVisibility(View.GONE);

Preference:页面

mPreference.setVisible(false);

mPreference.setVisible(true);

MenuItem :菜单控件:

MenuItem more = menu.add(0, 1, 0, "输入");

more.setVisible(true);

more.setVisible(false);

menu.add(0, MENU_TAKE_VIDEO, 0, R.string.attach_record_video).setVisible(true);

menu.add(0, MENU_TAKE_VIDEO, 0, R.string.attach_record_video).setVisible(false);

例如:短信

int camValue = android.provider.Settings.System.getInt(getContentResolver(),"com_disable_camera", 0);
              menu.add(0, MENU_TAKE_VIDEO, 0, R.string.attach_record_video).setIcon(R.drawable.ic_menu_movie).setVisible(camValue != 1);

例如:图库

int camValue = Settings.System.getInt(mActivity.getAndroidContext().getContentResolver(),"com_disable_camera", 0);
            menu.findItem(R.id.action_camera).setVisible(camValue != 1);

三者区别:

View.VISIBLE ===>设置控件可见
View.INVISIBLE===>设置控件不可见,但这个View仍然会占用在xml文件中所分配的布局空间,不重新layout 布局【仍占用布局空间】
View.GONE===>设置控件不可见,但这个View在ViewGroup中不保留位置,会重新layout布局,不再占用空间,其后面的view就会取代他的位置【不占用布局空间】

 

相关文章:

Android 布局菜单或按钮图标或Menu/Item设置可见和不可见

设置可见和不可见 即 设置 显示和隐藏;是双向设置;什么情况显示,什么情况隐藏分判断的条件 它不同于删除和屏蔽,删除和屏蔽,覆盖是单向的,不可逆转的。它间接等于单向的隐藏!!&…...

|| 与 ??的区别

?? : 空值合并运算符, 用于在左侧操作数为 null 或 undefined 时返回右侧操作数 let name null // null 或者 undefinedlet defaultName defaultNamelet displayName name ?? defaultNameconsole.log(displayName) // defaultName || : 逻辑或,…...

wordpress获取文章总数、分类总数、tag总数等

在制作wordpress模板的时候会要调用网站的文章总数分类总数tag总数等这个数值&#xff0c;如果直接用count查询数据库那就太过分了。好在wordpress内置了一些标签可以直接获取到这些数值&#xff0c;本文整理了一些常用的wordpress网站总数标签。 文章总数 <?php $count_…...

pytest 通过实例讲清单元测试、集成测试、测试覆盖率

1. 单元测试 概念 定义: 单元测试是对代码中最小功能单元的测试&#xff0c;通常是函数或类的方法。目标: 验证单个功能是否按照预期工作&#xff0c;而不依赖其他模块或外部资源。特点: 快速、独立&#xff0c;通常是开发者最先编写的测试。 示例&#xff1a;pytest 实现单…...

C#里怎么样自己实现10进制转换为二进制?

C#里怎么样自己实现10进制转换为二进制&#xff1f; 很多情况下&#xff0c;我们都是采用C#里类库来格式化输出二进制数。 如果有人要你自己手写一个10进制数转换为二进制数&#xff0c;并格式化输出&#xff0c; 就可以采用本文里的方法。 这里采用求模和除法来实现的。 下…...

Kafka-Consumer理论知识

一、上下文 之前的博客我们分析了Kafka的设计思想、Kafka的Producer端、Kafka的Server端的分析&#xff0c;为了完整性&#xff0c;我们接下来分析下Kafka的Consumer。《Kafka-代码示例》中有对应的Consumer示例代码&#xff0c;我们以它为入口进行分析 二、KafkaConsumer是什…...

Js-对象-04-Array

重点关注&#xff1a;Array String JSON BOM DOM Array Array对象时用来定义数组的。常用语法格式有如下2种&#xff1a; 方式1&#xff1a; var 变量名 new Array(元素列表); 例如&#xff1a; var arr new Array(1,2,3,4); //1,2,3,4 是存储在数组中的数据&#xff0…...

React 第八节组件生命周期钩子-类式组件,函数式组件模拟生命周期用法

概述 React组件的生命周期可以分为三个主要阶段&#xff1a; 挂载阶段&#xff08;Mounting&#xff09;&#xff1a;组件被创建&#xff0c;插入到DOM 树的过程&#xff1b; 更新阶段&#xff08;Updating&#xff09;&#xff1a;是组件中 props 以及state 发生变化时&#…...

Dubbo源码解析-服务调用(七)

一、服务调用流程 服务在订阅过程中&#xff0c;把notify 过来的urls 都转成了invoker&#xff0c;不知道大家是否还记得前面的rpc 过程&#xff0c;protocol也是在服务端和消费端各连接子一个invoker&#xff0c;如下图&#xff1a; 这张图主要展示rpc 主流程&#xff0c;消费…...

svn 崩溃、 cleanup失败 怎么办

在使用svn的过程中&#xff0c;可能出现整个svn崩溃&#xff0c; 例如cleanup 失败的情况&#xff0c;类似于 这时可以下载本贴资源文件并解压。 或者直接访问网站 SQLite Download Page 进行下载 解压后得到 sqlite3.exe 放到发生问题的svn根目录的.svn路径下 右键呼出pow…...

【Linux系列】NTP时间同步服务器搭建完整指南

在分布式系统和高可用环境中&#xff0c;时间同步是至关重要的。特别是对于银行、金融等关键业务系统&#xff0c;精准的时间同步不仅关系到系统的稳定性&#xff0c;还直接影响交易处理、日志管理、日终结算等功能。本文将介绍NTP&#xff08;Network Time Protocol&#xff0…...

go 结构体方法

在 Go 语言中&#xff0c;结构体方法是指附加到结构体类型上的函数。这些方法可以通过结构体的实例来调用。方法的接收者&#xff08;receiver&#xff09;指定了该方法属于哪个结构体类型。接收者可以是一个值类型或指针类型。 定义结构体方法 下面是如何为一个结构体定义方…...

DHCP服务(包含配置过程)

目录 一、 DHCP的定义 二、 使用DHCP的好处 三、 DHCP的分配方式 四、 DHCP的租约过程 1. 客户机请求IP 2. 服务器响应 3. 客户机选择IP 4. 服务器确定租约 5. 重新登录 6. 更新租约 五、 DHCP服务配置过程 一、 DHCP的定义 DHCP&#xff08;Dynamic Host Configur…...

uniapp内嵌的webview H5与应用通信

H5端&#xff1a; 1、找到index.html引入依赖 <script type"text/javascript" src"https://unpkg.com/dcloudio/uni-webview-js0.0.3/index.js"></script> 2、在需要通讯处发送消息 uni.postMessage({data:{code:200,msg:"处理完成&q…...

Android OpenGL ES详解——绘制圆角矩形

1、绘制矩形 代码如下&#xff1a; renderer类&#xff1a; package com.example.roundrectimport android.content.Context import android.opengl.GLES30 import android.opengl.GLSurfaceView.Renderer import com.opengllib.data.VertexArray import com.opengllib.prog…...

网络基础二

文章目录 协议定制&#xff0c;序列化和反序列化应用层网络版计算器协议的定制序列反序列化序列化未复用版 反序列化 TCP是面向字节流的&#xff0c;你怎么保证&#xff0c;你读取上来的数据&#xff0c;是‘’一个“ “完整””的报文呢&#xff1f; 我们没有区分字符串里面有…...

从Full-Text Search全文检索到RAG检索增强

从Full-Text Search全文检索到RAG检索增强 时光飞逝&#xff0c;转眼间六年过去了&#xff0c;六年前铁蛋优化单表千万级数据查询性能的场景依然历历在目&#xff0c;铁蛋也从最开始做CRUD转行去了大数据平台开发&#xff0c;混迹包装开源的业务&#xff0c;机缘巧合下做了实时…...

springMVC 全局异常统一处理

全局异常处理⽅式⼀: 1、配置简单异常处理器 配置 SimpleMappingExceptionResolver 对象: <!-- 配置全局异常统⼀处理的 Bean &#xff08;简单异常处理器&#xff09; --> <bean class"org.springframework.web.servlet.handler.SimpleMappingExceptionReso…...

qt ubuntu i386 系统

sudo ln -s cmake-3.31.0-linux-x86_64/bin/* /usr/local/bin 【Ubuntu20.4安装QT6 - CSDN App】Ubuntu20.4安装QT6_ubuntu安装qt6-CSDN博客 sudo ../configure -release -platform linux-g-64 -static -nomake examples -nomake demos -no-qt3support -no-script -no-scriptt…...

BUUCTF—Reverse—helloword(6)

一道安卓逆向的签到题 下载附件 使用JADX-gui反编译工具打开&#xff08;注意配环境&#xff09;&#xff0c;找到主函数 jadx 本身就是一个开源项目&#xff0c;源代码已经在 Github 上开源了 官方地址&#xff1a;GitHub - skylot/jadx: Dex to Java decompiler 发现flag …...

结合AI改写技术与五个技巧,快速优化论文查重率至合格范围

嘿&#xff0c;大家好&#xff01;我是AI菌。今天咱们来聊聊一个让无数学生头疼的问题&#xff1a;论文重复率飙到30%以上怎么办&#xff1f;别慌&#xff0c;我这就分享5个实用降重技巧&#xff0c;帮你一次搞定&#xff0c;轻松压到合格线以下。这些方法都是我亲身试验过的&a…...

掌握BepInEx:Unity游戏扩展全家桶的零门槛实践指南

掌握BepInEx&#xff1a;Unity游戏扩展全家桶的零门槛实践指南 【免费下载链接】BepInEx Unity / XNA game patcher and plugin framework 项目地址: https://gitcode.com/GitHub_Trending/be/BepInEx &#x1f50d; 游戏模组管理的行业痛点与解决方案 在Unity游戏生态…...

Windows Cleaner终极指南:三步解决C盘爆红,让电脑重获新生

Windows Cleaner终极指南&#xff1a;三步解决C盘爆红&#xff0c;让电脑重获新生 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服&#xff01; 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner 当你的C盘进度条变成刺眼的红色…...

别再只用Billboard了!用Cesium Entity实现高性能动态告警点的3个优化技巧

突破性能瓶颈&#xff1a;Cesium Entity动态告警点的高阶优化实战 当三维场景中需要同时呈现数百个闪烁的告警点时&#xff0c;许多开发者会发现原本流畅的界面开始变得卡顿。这不是Cesium的局限性&#xff0c;而是我们可能还没有完全掌握其性能优化的精髓。本文将带您深入探索…...

数据标注公司怎么选?从百度、阿里到龙猫、倍赛,聊聊2024年不同类型平台的合作门道

2024年数据标注平台合作指南&#xff1a;如何根据团队基因选择最优赛道 数据标注行业正在经历一场静默的革命。从传统的人工密集型标注到AI辅助的半自动化流程&#xff0c;从单一文本标注到多模态数据清洗&#xff0c;这个曾经被视为"AI流水线工人"的行业&#xff0c…...

chronyd服务端123端口未启动的深度排查与修复指南

1. 问题现象与初步判断 最近在搭建NTP时间同步架构时遇到了一个典型问题&#xff1a;作为中转节点的Master服务器123端口未启动&#xff0c;导致下游ServerA设备无法同步时间。具体表现为执行chronyc sources命令时&#xff0c;客户端显示^?符号&#xff08;表示无法连接服务端…...

2026年各高校论文AI率新规汇总:双一流和普通院校标准差异

2026年各高校论文AI率新规汇总&#xff1a;双一流和普通院校标准差异 同一篇论文&#xff0c;知网52%&#xff0c;维普38%&#xff0c;万方21%。 为什么差这么多&#xff1f;不是平台乱搞&#xff0c;而是检测算法和判断标准不一样。理解了高校AI率新规背后的逻辑&#xff0c…...

SAP BP客户主数据批量修改实战:从Excel导入到ALV报表展示全流程

SAP BP客户主数据批量修改实战&#xff1a;Excel导入与ALV报表全流程解析 当企业客户规模达到数万甚至数十万级别时&#xff0c;手动逐个修改客户主数据无异于一场噩梦。我曾参与过某跨国零售集团的SAP系统升级项目&#xff0c;仅客户地址变更就需要处理超过8万条记录。传统方式…...

BlueDot BME280库深度解析:嵌入式多传感器驱动实践

1. BlueDot BME280 库技术解析&#xff1a;面向嵌入式工程师的多传感器驱动实践指南BME280 是博世&#xff08;Bosch&#xff09;推出的高精度环境传感器&#xff0c;集成温度、相对湿度与气压三参数测量能力&#xff0c;广泛应用于气象站、IoT终端、无人机姿态补偿及室内环境监…...

暗黑3终极按键助手:5分钟学会解放双手的完整指南

暗黑3终极按键助手&#xff1a;5分钟学会解放双手的完整指南 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面&#xff0c;可自定义配置的暗黑3鼠标宏工具。 项目地址: https://gitcode.com/gh_mirrors/d3/D3keyHelper 还在为暗黑破坏神3中繁琐的按键操作而烦…...