Android局部布局替换实现
16lz
2021-01-23
最近的开发中遇到了这个问题,我采用了一种比较取巧的方法来实现:
在布局文件中设置两个要替换的页面的visibility属性:
<include android:id="@+id/include1" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1.1" layout="@layout/footer_friendsinfo" /> <include android:id="@+id/include2" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1.1" android:visibility="gone" layout="@layout/footer_asured_info" />
即一个暂时显示,另一个处于隐藏状态(Android中控件visibility属性的三种状态:
可见(visible)
XML文件:android:visibility="visible"
Java代码:view.setVisibility(View.VISIBLE);
不可见(invisible)
XML文件:android:visibility="invisible"
Java代码:view.setVisibility(View.INVISIBLE);
隐藏(GONE)
XML文件:android:visibility="gone"
Java代码:view.setVisibility(View.GONE);)
接着在相应的Java文件中获取布局对象,设置其Visibility属性:
//更换布局LinearLayout layout1 = (LinearLayout) v.findViewById(R.id.include1);LinearLayout layout2 = (LinearLayout) v.findViewById(R.id.include2);layout1.setVisibility(View.GONE);layout2.setVisibility(View.VISIBLE);
这样就可以实现局部布局的替换了。
更多相关文章
- RecylcerView中的子view matchParent属性失效的问题
- 【Android】Android中 Paint 字体、粗细等属性的一些设置
- 安卓笔记:安卓控件属性大全
- Android处理9.png文件流程
- android layout属性 .
- Attribute is missing the Android namespace prefix——android
- [android]布局(容器)简介和使用方法