最近做了一个项目,接触到Fragment,个人感觉在分屏操作方面Fragment很方便。根据官方定义,Fragment的作用就是内置在Activity中的独立的可以接受用户事件的组件。我们可以通过FragmentManager来管理Fragment。Fragment的使用方法大概分为两种:
1.静态Fragment。即在layout文件中定义,此类Fragment基本不会改变,在Activity中的位置是固定的。声明静态Fragment如下
<LinearLayout 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"
android:orientation="horizontal"
android:id="@+id/parentLayout"
>
<fragment android:id="@+id/fragment1"
android:name="your_package_name.MyFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"></fragment>
</LinearLayout>
声明之后,layout文件就会根据android:name指定的类来实例化Fragment。
public class MyFragment extends Fragment{ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return view }
2.动态添加Fragment,若想在代码中动态添加Fragment:
MyFragment details = new MyFragment() FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.parentLayout, details); ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE); ft.commit();