创建Fragment
public class MyFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_my, container, false);
}
}
Fragment和Activity一样有自己的界面,不同的是Activity是在onCreate()中通过setContentView()加载布局文件,而Fragment是在onCreateView通过LayoutInflater.inflate()加载布局文件。
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="jun.com.fragmenttest.MyFragment">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Hello Fragment"
android:textSize="30sp"/>
</FrameLayout>
使用Fragment
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="jun.com.fragmenttest.MainActivity">
<fragment
android:id="@+id/my_fragment"
android:name="jun.com.fragmenttest.MyFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</RelativeLayout>
直接在Activity的布局文件中使用,和一般UI组件不同的是使用Fragment需要设置name属性也就是指明是哪个Fragment,并且还一定要设置id属性否则会报错。