Android开发中,大部分控件都有visibility这个属性,其属性有3个分别为“visible ”、“invisible”、“gone”。主要用来设置控制控件的显示和隐藏。

1) 可见(visible)XML文件:android:visibility="visible"

Java代码:view.setVisibility(View.VISIBLE);

2) 不可见(invisible)XML文件:android:visibility="invisible"

Java代码:view.setVisibility(View.INVISIBLE);

3) 隐藏(GONE)XML文件:android:visibility="gone"

Java代码:view.setVisibility(View.GONE);

为了区别其作用,测试demo如下:Java代码:

# public class MainActivity extends Activity {

#     private TextView txt222 = null;

#

#     @Override

#     protected void onCreate(Bundle savedInstanceState) {

#         super.onCreate(savedInstanceState);

#         setContentView(R.layout.main);

#

#         txt222 = (TextView)findViewById(R.id.txt2222);

#

#         findViewById(R.id.btn1).setOnClickListener(listener);

#         findViewById(R.id.btn2).setOnClickListener(listener);

#         findViewById(R.id.btn3).setOnClickListener(listener);

#     }

#

#     View.OnClickListener listener = new View.OnClickListener() {

#         @Override

#         public void onClick(View v) {

#             switch (v.getId()) {

#             case R.id.btn1:

#                 txt222.setVisibility(View.VISIBLE);

#                 break;

#

#             case R.id.btn2:

#                 txt222.setVisibility(View.INVISIBLE);

#                 break;

#

#             case R.id.btn3:

#                 txt222.setVisibility(View.GONE);

#                 break;

#             }

#         }

#     };

# }

xml代码:

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:orientation="vertical" >

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_marginBottom="20dip"

android:orientation="horizontal" >

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_weight="1"

android:background="#F00"

android:text="1111"

android:visibility="visible" />

android:id="@+id/txt2222"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_weight="1"

android:background="#0F0"

android:text="2222"

android:visibility="visible" />

android:id="@+id/btn1"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="2222 VISIBLE" />

android:id="@+id/btn2"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="2222 INVISIBLE" />

android:id="@+id/btn3"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="2222 GONE" />

运行结果:

代码解释:两个TextView,用于测试visible, invisible, gone的效果

第一个TextView, 用于测试第二个TextView被设置为visible,invisible,gone状态后的显示效果

第二个TextView, 用于设置为visible, invisible, gone

三个Button,用于操作第二个TextView的状态分别为visible, invisible, gone

测试结果1) 点击第二个Button(btn2),设置第二个TextView(txt222)为invisible,显示效果如下:

2) 点击第二个Button(btn3),设置第二个TextView(txt222)为gone,显示效果如下:

3) 点击第二个Button(btn1),设置第二个TextView(txt222)为visible,显示效果如下:

结论:visible      : 设置控件可见

invisible: 设置控件不可见

gone        : 设置控件隐藏

invisible 和gone主要区别是:当控件visibility属性为invisible时,界面保留了view控件所占有的空间;而控件属性为gone时,界面则不保留view控件所占有的空间。

java visibility_浅析Android中的visibility属性相关推荐

  1. Android中的visibility属性

    Android开发中,大部分控件都有visibility这个属性,其属性有3个分别为"visible "."invisible"."gone" ...

  2. android get width单位是什么意思,浅析Android中getWidth()和getMeasuredWidth()的区别

    结论:getMeasuredWidth()获取的是view原始的大小,也就是这个view在XML文件中配置或者是代码中设置的大小.getWidth()获取的是这个view最终显示的大小,这个大小有可能 ...

  3. android中 menu的属性详细解释

    android中 menu的属性详细解释 <?xml version="1.0" encoding="utf-8"?> <menu xmlns ...

  4. Android 中自定义控件和属性(attr.xml,declare-styleable,TypedArray)的方法和使用

    一. 在res/values 文件下定义一个attrs.xml 文件.代码如下: <?xml version="1.0" encoding="utf-8" ...

  5. android中xml tools属性详解

    第一部分 安卓开发中,在写布局代码的时候,ide可以看到布局的预览效果. 但是有些效果则必须在运行之后才能看见,比如这种情况:TextView在xml中没有设置任何字符,而是在activity中设置了 ...

  6. android中xmlns:tools属性详解

    第一部分 安卓开发中,在写布局代码的时候,ide可以看到布局的预览效果. 但是有些效果则必须在运行之后才能看见,比如这种情况:TextView在xml中没有设置任何字符,而是在activity中设置了 ...

  7. 【java】浅析JDK中ServiceLoader的源码

    1.概述 转载:浅析JDK中ServiceLoader的源码 上一篇文章:深入探讨 Java 类加载器 2.ServiceLoader的使用 这里先列举一个经典的例子,MySQL的Java驱动就是通过 ...

  8. android中用代码设置edittext属性为密码,Android中EditText常用属性设置

    EditText继承关系:View–>TextView–>EditText 常用属性如下:android:layout_gravity="center_vertical" ...

  9. Java IO在Android中应用(三):Apk加固去壳

    Java I/O在Android中应用(三):Apk加固去壳 前言(废话) 现在在动车上,因为最近接到一个紧急的出差任务,需要去一趟江苏我们移动应用的客户现场.说真的,本来其实我是很困的,但是车上有一 ...

  10. Java IO在Android中应用(二):APK加固

    Java I/O在Android中应用(二):APK加固套壳 前言(废话) 我,有两把键盘,第一把是Poker III(黑轴),第二把是Poker II(红轴).工作的时候我常用的是红轴的Poker ...

最新文章

  1. Oracle 用户概念与基本操作
  2. 水杯测试----误人子弟啊!
  3. 洛谷1042 乒乓球 解题报告
  4. numpy添加元素_科研速递 | 花费15年众望所归!NumPy论文终登上Nature!
  5. no Alcoholic drink anymore
  6. CentOS6.x下配置sendmail发邮件
  7. JAVA入门级教学之(方法-7)
  8. ORA-00376:file x cannot be read at this time
  9. MyEclipse取消验证Js的两种方法
  10. 大数据的趋势走向如何
  11. 鲁大师电脑硬件兼容性测试软件,还在用鲁大师?查看电脑硬件信息可以用这些免费的软件!...
  12. oracle财务系统与erp,浅谈Oracle ERP财务系统在中煤建安集团的应用
  13. html5在线画板菱形怎么画,HTML5 Canvas 制作一个“在线画板”
  14. 在遇到移动硬盘无法访问的情况下,如何无需格式化地修复硬盘?
  15. 这家协同办公软件厂商,也曾如盛夏莲花般绽放
  16. 那种语言不属于w3c标准,前端之W3C标准及规范
  17. 霍夫变换c语言程序,霍夫变换 | Cauthy's Blog
  18. 单目标跟踪SiamMask:特定目标车辆追踪 part2
  19. [转帖]全球软件市场格局变化
  20. maven引入自己的jar包避坑

热门文章

  1. Android Service(一)概述、作用、生命周期
  2. VBA学习笔记(6)--抽取第一列中叫“虹虹”的个人信息
  3. 29.3 用户模式构造
  4. mysql order by 自定义
  5. Linux企业级项目实践之网络爬虫(27)——多路IO复用
  6. Java 多线程 简单实例 (Thread)
  7. R 保存包含中文的 eps 图片--showtext
  8. HCIE-Security Day13:防火墙双机热备实验(一)防火墙直路部署,上下行连接交换机
  9. zabbix详解(一)——zabbix基本概念
  10. 网络安全——局域网内网络攻击手段(MAC地址攻击、ARP攻击、DHCP攻击)