解决方案 »

  1.   

    FragmentTransaction的两个方法,hide一个,show另一个。
      

  2.   

    getSupportFragmentManager().beginTransaction().replace
      

  3.   


    不可以replace, 那样会提示这个fragment已经被added过了
      

  4.   


    如果getFragmentManager().beginTransaction().hide(getFragmentManager().findFragmentByTag("first")).show(f).commit();show的话, 貌似不起作用啊
      

  5.   

    fragment可以一次添加多个,最好添加的时候就只显示一个,隐藏其他的,如果不隐藏其他的,在你fragment背景是透明的情况下回显示混乱。//首先获得第一个fragment里面的button
    first.getView().findViewById(button_id) 
    //给button添加点击事件
    点击事件里面
    getFragmentManager().beginTransaction()                 
    .hide(first).show(second).commit();first,second就是你的两个fragment对象
      

  6.   


    多谢你的宝贵建议, 我是初学者, 只看在看到官方的demo以后,觉得既然可以一次add一个,那么能不能多次add成功呢?
    我提的这个问题就是我自己胡思乱想,自我折腾的结果。
    我确实是按照你的样子弄的, 但是show不出来。我android 是 4.4 的
      

  7.   


    如果getFragmentManager().beginTransaction().hide(getFragmentManager().findFragmentByTag("first")).show(f).commit();show的话, 貌似不起作用啊
    如果getFragmentManager().beginTransaction().hide(getFragmentManager().findFragmentByTag("first")).show(f).commit();show的话, 貌似不起作用啊实验过的,可以的啊,你不要把代码连成片写,一个个对象获取,创建两个fragment,transaction = fragmentManager.beginTransaction();transaction添加完,就直接调用hide哪一个,show哪一个了。
      

  8.   

    getFragmentManager().beginTransaction()                
     .add(R.id.default_fragment_container, first, "first")                 
    .add(second, "second")                 
    .commit();加第二个的时候换成这样试试
     .add(R.id.default_fragment_container, second, "second")                 
      

  9.   

    多谢, 我已经明白了, 因为我添加的时候, 没指定 container, 所以才show不出来, 结贴了, 散分