开发者社区> 问答> 正文

判断当前Activityl里面显示的是哪个Fragment??

如题,我有一个Activity 最顶端有个按钮.下面是个FrameLayou.
Activity一上来就将下面的FrameLayout add 一个Fragment. 暂且叫他AFragment.
然后我点击按钮.判断下面显示的是不是AFragmetn. 如果是 ,就将AFragment换成BFragment. 如果不是AFragmetnfinish(); 怎么做. 我代码写了好多回了

展开
收起
爵霸 2016-05-30 09:31:05 2997 0
1 条回答
写回答
取消 提交回答
  • 首先你建两个Fragment(AFragment和BFragment),定义一个boolean变量(isA=false),默认显示在rameLayout区域显示AFragment,
    oncreat()方法里调用setDeafultFragment();

     private AFragment a ;
     private BFragment b ;
     private void setDeafultFragment(){
     if(a == null){
     a = new AFragment();
     }
     replaceFragmentWithSelected(a);
     isA = true;
     }

    在点击按钮时判断isA是否为true,如果为true则显示BFragment,否则显示AFragment;

     public void onClick(View view){
     switch(view.getId()){
     case R.id.button:
     if(a == null){
     a = new AFragment();
     }
     if(b == null){
     b = new BFragment();
     }
            if(isA){
                replaceFragmentWithSelected(b);
                isA = false;
            }else{
                replaceFragmentWithSelected(a);
            }
            break;
    }
    
    
    }
    2019-07-17 19:19:01
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载