今天4月11号,又到了总结的时间
fragment有什么用?
讲道理是为了适配手机和平板上的开发,我感觉它提供一种模块化的设计理念。
那么怎么用呢(用了fragment,从此不加班)
有静态和动态添加两种方法:
静态加载非常简单
写一个类继承自fragment就好了(用v4包的fragment类最好,因为这个全系统版本都支持)
然后在布局文件中定义一个fragment就好了
android:name="com.example.zvt_110.ninepatch.LeftFragment"
name属性引用一下
那么动态加载呢(是时候展现真正的技术了)
private void replaceFragment(Fragment fragment){ FragmentManager fragmentManager=getSupportFragmentManager(); FragmentTransaction transaction=fragmentManager.beginTransaction(); transaction.replace(R.id.right_fragment,fragment); transaction.addToBackStack(null); transaction.commit(); }
固定写法,老哥
transaction.addToBackStack(null);
注意这句,加了这句就可返回上一级界面了,是不是很方便很美滋滋?
transaction.replace(R.id.right_fragment,fragment);
还有这里,前面那个参数是目前的fragment,后面那个参数是将要替换的fragment。
然后在布局文件里面,我们使用一个很冷门但是这里确很好用的布局————Framelayout之术!
<FrameLayout android:id="@+id/right_fragment" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1"></FrameLayout>
ok,一手请半天假,结束这个回合。