Android 中使用 XML 中的 fragment 心得

一般在android中的xml文件中使用fragment控件例如下:

<fragment  
        android:id="@+id/fragment1"  
        android:name="android_fragment.MyDialogFragment"  
        android:layout_width="match_parent"  
        android:layout_height="wrap_content"  />  
这样的好处就是在XML中写完了不用在Activity中写东西就可以直接加载MydialogFragment中的onCreate()方法以及onCreateView()方法,

但是在使用FragmentManager在Activity中进行动态加载时,如果加载到XML控件为<fragment>的空间中就会报错,报错为:Error inflating class fragment

这时只要将<fragment>空间改为<FrameLayout>等(目前就使用了这一个控件,其他的没有测试过)就可以了。例如:

<FrameLayout
        android:id="@+id/fragment"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

Activity中写:

		FragmentManager manager = getFragmentManager();
		FragmentTransaction transaction = manager.beginTransaction();
		MyFragment fragment = new MyFragment();
		transaction.add(R.id.fragment, fragment);
		transaction.commit();

这也是在自己不断地摸索实验中发现的,希望能帮到大家!大笑
展开阅读全文

没有更多推荐了,返回首页