1)定义 ViewStub

<ViewStub android:id = "@+id/stub_import"

android:inflatedId="@+id/panel_import"

android:layout="@layout/progress_overlay"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_gravity="bottom"/>

2)展开视图

findViewById(R.id.stub_import).setVisibility(View.VISIBLE);

// 或者 获取视图

View importPanel = ((ViewStub)

findViewById(R.id.stub_import)).inflate();

有一点需要记住的是:当ViewStub inflate后,这个ViewStub就从View层次中移除了。因此,没有必要保留一个对ViewStub的引用(如在类的字段里)。

ViewStub是快捷编程与高效编程之间的产物。与其手动的inflate View并在运行时添加到View层次上,不如简单的使用ViewStub它相当“廉价”且易于使用。ViewStub唯一的缺点是现在不支持<merge />标签。

用ViewStub类和在XML文件里面指定的布局资源文件关联起来,让布局资源文件在需要使用的时候再加载上去。主要作用是性能优化,什么时候用什么时候加载,不用在开始启动的时候一次加载,既可以加快程序的启动速度,又可以节省内存资源。


更多相关文章

  1. android:windowSoftInputMode属性使用
  2. Android应用开发相关下载资源
  3. 把TextView中的文字添加阴影效果及Style的使用
  4. Android(安卓)SDK更新以及ADT更新出现问题的解决办法
  5. Android月历控件(DatePicker)和时间控件(TimePicker)的使用
  6. android 控件使用集锦
  7. android 控件使用集锦
  8. 使用Vitamio打造自己的Android万能播放器(1)――准备
  9. Android(Lollipop/5.0) Material Design(五) 定义阴影和裁剪View

随机推荐

  1. Android(安卓)Root分析及防范
  2. Android(安卓)尺寸dp,sp
  3. Android属性动画-Property Animation(四)
  4. android fragment详细介绍
  5. Android(安卓)UI - 右侧滑动实现A-Z的快
  6. [翻译]Android单手指缩放-第三部分(Androi
  7. Android(安卓)5.0学习之使用Material主题
  8. tools:text和android:text
  9. 安居客Android项目架构演进
  10. Android(安卓)View分区域点击实现方案—