Android如果想让一个View变得不可见,可以使用view.setVisibility(View.INVISIBLE),也可以view.setVisibility(View.GONE)(或者在xml文件中修改),这二者有何区别呢?查看android源码可以看到:
/**
* This view is invisible, but it still takes up space for layout purposes.
* Use with {@link #setVisibility} and <a href="#attr_android:visibility">{@code
* android:visibility}.
*/
public static final int INVISIBLE = 0x00000004;
/**
* This view is invisible, and it doesn't take any space for layout
* purposes. Use with {@link #setVisibility} and <a href="#attr_android:visibility">{@code
* android:visibility}.
*/
public static final int GONE = 0x00000008;也就是说,invisible时仍然占据layout空间,而gone时则不会占据空间。
本文详细解析了Android中使View不可见的两种方式:setVisibility(View.INVISIBLE)与setVisibility(View.GONE)的区别。前者使View不可见但保留布局空间,后者不仅不可见而且不占用任何布局空间。
4148

被折叠的 条评论
为什么被折叠?



