android左右滑动fragment,Android UI开发第二十八篇——Fragment中使用左右滑动菜单

Fragment实现了Android UI的分片管理,尤其在平板开发中,好处多多。这一篇将借助Android UI开发第二十六篇——Fragment间的通信、 Android UI开发第二十七篇——实现左右划出菜单 来实现。看图1的效果,左边使用LeftFragment实现,中间使用的CenterFragment实现。

public class SlidingActivity extends FragmentActivity implements LeftShowCenter{ private SlidingMenu mSlidingMenu; private CenterFragment centerFragment; @Override protected void onCreate(Bundle arg0) { super.onCreate(arg0); setContentView(R.layout.main); DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); mSlidingMenu = (SlidingMenu) findViewById(R.id.slidingMenu); mSlidingMenu.setLeftWidth((dm.widthPixels / 5) * 2); mSlidingMenu.setRightWidth((dm.widthPixels / 5) * 3); View leftView = getLayoutInflater().inflate(R.layout.left_frame, null); View rightView = getLayoutInflater().inflate(R.layout.right_frame, null); View centerView = getLayoutInflater().inflate(R.layout.center_frame, null); mSlidingMenu.setLeftView(leftView); mSlidingMenu.setRightView(rightView); mSlidingMenu.setCenterView(centerView); FragmentTransaction t = this.getSupportFragmentManager() .beginTransaction(); LeftFragment leftFragment = new LeftFragment(); t.replace(R.id.left_frame, leftFragment); RightFragment rightFragment = new RightFragment(); t.replace(R.id.right_frame, rightFragment); centerFragment = new CenterFragment(); t.replace(R.id.center_frame, centerFragment); t.commit(); } public void showLeft() { mSlidingMenu.showLeftView(); } public void showRight() { mSlidingMenu.showRightView(); } public void showCenter() { mSlidingMenu.showCenterView(); } @Override public void leftShowCenter(int id) { // TODO Auto-generated method stub if(centerFragment!=null){ centerFragment.updateView(id); } } }

SlidingActivity继承自FragmentActivity,实现了LeftShowCenter的接口方法,LeftShowCenter接口的主要目的是实现Fragment间的通信。

1362464745_2250.png

图1

/*** @author 张兴业* android开发进阶群:241395671*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值