Fragment实现横竖屏不同的布局

下载地址:http://download.csdn.net/download/xiaanming/5708015

个人觉得Fragment是一个很灵活的东西,用处很大,特别是在平板上等大屏幕的设备上面用处更大,如果不是很了解Fragment的请看这篇文章http://blog.csdn.net/aomandeshangxiao/article/details/7671533,觉得讲的很详细,不过讲一点,我在在3.0以下的版本不继承Activity,而是继承FragmentActivity,获取FragmentManager用getSupportFragmentManager()代替getFragmentManager().其他的看我推荐的那篇文章就行了,好了,接下来我们先来看看项目的效果(我明明弄得是动态图,怎么没反应呀呀呀)

上面的适合由列表进入详情的情况,我们先看下横竖屏的布局

1.竖屏布局,我们用的是FrameLayout,里面放置两个装Fragment的LinearLayout容器,这样的布局是重点

  1. <<SPAN>FrameLayout
  2. xmlns:android="http://schemas.android.com/apk/res/android"
  3. xmlns:tools="http://schemas.android.com/tools"
  4. android:layout_width="match_parent"
  5. android:layout_height="match_parent" >
  6. <<SPAN>LinearLayout
  7. android:id="@+id/list_container"
  8. android:layout_width="match_parent"
  9. android:layout_height="match_parent">
  10. </<SPAN>LinearLayout>
  11. <<SPAN>LinearLayout
  12. android:id="@+id/detail_container"
  13. android:layout_width="match_parent"
  14. android:layout_height="match_parent">
  15. </<SPAN>LinearLayout>
  16. </<SPAN>FrameLayout>
  

2.横屏布局就比较简单,我们在res下新建一个layout-land文件夹,里面放置一个和上面同名的layout

  1. <<SPAN>LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2. xmlns:tools="http://schemas.android.com/tools"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent" >
  5. <<SPAN>LinearLayout
  6. android:id="@+id/list_container"
  7. android:layout_width="match_parent"
  8. android:layout_height="match_parent"
  9. android:layout_weight="2">
  10. </<SPAN>LinearLayout>
  11. <<SPAN>LinearLayout
  12. android:id="@+id/detail_container"
  13. android:layout_width="match_parent"
  14. android:layout_height="match_parent"
  15. android:layout_weight="1">
  16. </<SPAN>LinearLayout>
  17. </<SPAN>LinearLayout>

3.新建一个列表Fragment,直接上代码吧,里面只有一个ListView用来显示列表数据

public class FragmentList extends Fragment { //需要注意代码:fragmentTransaction.addToBackStack(null); 如果取消,则返回键退出程序

}

posted @ 2013-12-30 19:57  萧萧  阅读(468)  评论(0)    收藏  举报