Fragment隐藏
来源:互联网 发布:防范网络电信诈骗措施 编辑:程序博客网 时间:2024/06/07 10:55
* 简单处理,底部标签切换;
* 使用某个Fragment的时候再new出来;
//获取管理器
fragmentManager = getSupportFragmentManager();
//初始化组件
drawerLayout = (DrawerLayout) findViewById(R.id.dl_chehua);
frameLayout = (FrameLayout) findViewById(R.id.fl_zhanwei);
group = (RadioGroup) findViewById(R.id.group);
//侧滑布局
linearLayout = (LinearLayout) findViewById(R.id.ll_chehua);
//侧滑布局中的图片
imageView = (ImageView) findViewById(R.id.jqr);
//封装数据
list = new ArrayList<>();
//点击机器人关闭侧滑
(也可以用普通的监听事件)
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
drawerLayout.closeDrawer(linearLayout);
}
});
//将所有Fragment添加到占位布局
//添加一个事务
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
frag1 = new frag1();
fragmentTransaction
.add(R.id.fl_zhanwei, frag1)
.commit();
//RadioGroupd点击监听
group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup radioGroup, @IdRes int i) {
hideFragments();//隐藏所有Fragment;
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
switch (i) {
case R.id.but1:
fragmentTransaction.show(frag1).commit();
break;
case R.id.but2:
if (frag2 == null) {
frag2 = new frag2();
fragmentTransaction.add(R.id.fl_zhanwei,frag2).commit();
} else {
fragmentTransaction.show(frag2).commit();
}
break;
case R.id.but3:
if (frag3 == null) {
frag3 = new frag3();
fragmentTransaction.add(R.id.fl_zhanwei, frag3).commit();
} else {
fragmentTransaction.show(frag3).commit();
}
break;
case R.id.but4:
if (frag4 == null) {
frag4 = new frag4();
fragmentTransaction.add(R.id.fl_zhanwei, frag4).commit();
} else {
fragmentTransaction.show(frag4).commit();
}
break;
}
}
});
}
//隐藏fragment的方法
public void hideFragments() {
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
if (frag1!= null && frag1.isAdded()) {
fragmentTransaction.hide(frag1);
}
if (frag2 != null && frag2.isAdded()) {
fragmentTransaction.hide(frag2);
}
if (frag3 != null && frag3.isAdded()) {
fragmentTransaction.hide(frag3);
}
if (frag4 != null && frag4.isAdded()) {
fragmentTransaction.hide(frag4);
}
fragmentTransaction.commit();
}
- Fragment隐藏
- Fragment隐藏、显示、替换
- Fragment隐藏与显示
- Fragment添加和隐藏
- Fragment 隐藏软键盘
- Fragment隐藏与显示
- fragment的显示 隐藏
- fragment 显示隐藏
- Fragment的隐藏和
- Fragment切换 隐藏 显示
- Fragment显示隐藏
- Fragment的隐藏与显示
- fragment 显示与隐藏执行
- Fragment的隐藏与显示
- Fragment 显示隐藏回调
- Fragment的隐藏于显示
- android fragment动态显示隐藏
- 添加和隐藏fragment导致fragment重叠问题
- Java并发之Callable、Future
- 疯狂Activiti6连载(3)Activiti开发环境搭建
- 软件集成接口.COM组件交互(2)
- too many open files(打开的文件过多)解决方法
- Linux-网络管理
- Fragment隐藏
- 多选框
- rocketmq4.0.0单点搭建
- SVM
- C语言变量位置的说明
- SIP总结一
- 【POJ
- 1. Two sum
- 蓝桥杯 历届试题 核桃的数量