一、fragmnet静态加载
这样就能对fragment进行动态的加载,什么时候用什么创建就行
1.在layout Xml文件里面添加fragment控件.
2. 创建一个新的java code页面 继承与Fragment 然后在该java code页面里面实现Fragment的生命周期
其中我们主要使用的是oncreatView方法.
oncreateView方法的返回值是View对象. 但是我们需要不返回值进行改变为我们自己引用View
例:
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout."在fragment里面添加的布局", null);
return view;
3. 在我们的主布局里面 MainActivity应该继承至FragmentActivity 然后其他都不变.
这样就能实现一个fragment的静态加载.
二、Fragment的动态加载
1。所谓的动态加载,就是不需要在layout>Xml文件里面对Fragment进行布局.我们直接在java Code里面直接使用.随时用随时创建.
2.直接创建一个java code 继承至Fragment
3.对Fragment的创建在onCreateView方法里面进行,我们在这里可以引用自己的任意布局。
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout."在fragment里面添加的布局", null);
return view;
4. 把我们已经引用的布局的fragment加载到当前的的Activity页面上。
这里我们用到了,事物看实例
例:
public class MainActivity extends FragmentActivity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
FragmentD1 fragmentD1 = new FragmentD1();
//这是我们需要加载的fragment的对象
FragmentD2 fragmentD2 = new FragmentD2();
//得到fragment的管理者对象
FragmentManager manager = getSupportFragmentManager();
//通过fragment管理者得到fragment事物用于加载fragment
FragmentTransaction fragmentTransaction = manager.beginTransaction();
fragmentTransaction.replace(R.id.fragmentD1, fragmentD1);
//把需要加载的fragment加载到事物里面
fragmentTransaction.replace(R.id.fragmentD2, fragmentD2);
//事物提交,然后实现加载
fragmentTransaction.commit();
}
这样就能对fragment进行动态的加载,什么时候用什么创建就行