Andriod Fragment——给Activity添加一个Fragment
来源:互联网 发布:淘宝批量修改运费模板 编辑:程序博客网 时间:2024/05/18 03:22
1. 在Activity布局文件的内部声明Fragment。
你能够像一个视图那样给Fragment指定布局属性。下例说明了给Activity指定两个Fragment的布局文件。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent">
<fragment android:name="com.example.news.ArticleListFragment"
android:id="@+id/list"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="match_parent" />
<fragment android:name="com.example.news.ArticleReaderFragment"
android:id="@+id/viewer"
android:layout_weight="2"
android:layout_width="0dp"
android:layout_height="match_parent" />
</LinearLayout>
在<fragment>元素中的android:name属性指定了在布局中要实例化的Fragment。
当系统创建这个Activity布局时,它实例化在布局中指定的每一个Fragment,并且分别调用onCreateView(),来获取每个Fragment的布局。然后系统会在Activity布局中插入通过<fragment>元素中声明直接返回的视图。
注:每个Fragment需要一个唯一的标识,这样能够在Activity被重启时系统使用这个ID来恢复Fragment(并且你能够使用这个ID获取执行事务的Fragment,如删除操作)。有三种给Fragment提供ID的方法:
A. 使用android:id属性来设置唯一ID;
B. 使用android:tag属性来设置唯一的字符串;
C. 如果没有设置前面两个属性,系统会使用容器视图的ID。
2. 编程给一个既存的ViewGroup添加Fragment。
在Activity运行的任何时候,都可以把Fragment添加到Activity布局中。你只需要指定一个放置Fragment的ViewGroup。要在Activity中使用Fragment事务(如添加、删除、或替换Fragment),必须使用来自FragmentTransaction的APIs。你能够向下面例子那样从Activity中获取一个FragmentTransaction实例:
FragmentManager fragmentManager = getFragmentManager()
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
然后,你能够使用add()方法把Fragment添加到指定的视图中,如:
ExampleFragment fragment = new ExampleFragment();
fragmentTransaction.add(R.id.fragment_container, fragment);
fragmentTransaction.commit();
传递给add()方法的第一个参数是Fragment应该被放入的ViewGroup,通过资源ID来指定这个ViewGroup,第二个参数是要添加的Fragment。
一旦FragmentTransaction对象发生了改变,就必须调用commit方法来提交改变的影响。
- Andriod Fragment——给Activity添加一个Fragment
- Andriod Fragment---给Activity添加一个Fragment
- Andriod Fragment---给Activity添加一个Fragment
- Andriod Fragment---给Activity添加一个Fragment
- Andriod Fragment---给Activity添加一个Fragment
- Fragment系列—Activity中添加fragment
- Andriod Fragment——添加用户界面
- Andriod Fragment---添加用户界面
- Andriod Fragment---添加用户界面
- 4给一个activity增加一个fragment
- Android Fragment——添加一个没有UI的Fragment
- Activity给Fragment传参
- Activity动态添加fragment
- Activity动态添加Fragment
- 给 Fragment添加Theme
- andriod——Retrofit+Fresco+MVP+Fragment
- Android实用方法— ViewPager + Fragment取消预加载以及Activity传值给Fragment
- Fragment之实现Activity给Fragment传参
- Android中AsyncTask的处理后台耗时操作(如list排序,进度加载)
- 一小时搞定DIV+CSS布局-固定页面开度布局
- oracle学习笔记 ---- 子查询
- js的调用
- Struts2中的配置问题
- Andriod Fragment——给Activity添加一个Fragment
- 【转】 只能输入数字, 正则限制input框只能输入数字,英文等
- mysql索引浅谈
- HDU 4643 GSM(计算几何求线段的中垂线)
- LIS LCS LCIS
- 网络流
- <img src="" onerror="alert('xss')"/>
- qt unicode编码到16进制符号字符串
- fastdfs group通过添加硬盘扩容