解决方案 »

  1.   

    求大神解答呀。不知道是不是从fragment点击事件那里调用activity的getfragmentmannager方法不对呢?
      

  2.   

    使用intent跳转,还有,按你的想法,用tabhost不是更容易实现吗
      

  3.   


    恩,我之前还不知有现成viewpager和tabhost的这种选项卡的组件,所以想用这个fragment切换的办法来实现。但是现在就是想用Fragment来实现这个功能,有点想把这个牛角尖钻透因为fragment被托管给了所在的MainActivity,而通过getActivity方法,强制转换成MainActivity,获得被托管给的activity实例,再调用activity的getFragmentManager方法,来操作替换fragment的动作。我这个思路有问题吗。或者语句有哪里不对的地方吗。??求解答呀4楼所说的Intent不是用来启动activity的吗?也可以用来操作fragment?求详细指教。大谢!
      

  4.   

    既然每个fragment里面都有这4个按钮跳转到相应的fragment,为什么不把这四个按钮写在依附的activity
    上面呢???
    这样在对应的Activity上面声明这四个fragment,点击按钮直接用replace方法就可以切换对应的fragment了啊。
    不知道你的布局是什么样子,不晓得能解决你的问题不....
      

  5.   


    这样的我会写,而且在MainActivity类里面也已经写了,你可以看我MainActiivity后半部分的代码,而且是有效果的。
    但就是不知道为什么在Fragment里面写的四个按钮,同样使用replace方法,按下却不能跳转到其他的Fragment里。
    你知道什么问题吗?是不是我咋Fragment里面调用托管的Activity的方法有问题?
      

  6.   


    这样的我会写,而且在MainActivity类里面也已经写了,你可以看我MainActiivity后半部分的代码,而且是有效果的。
    但就是不知道为什么在Fragment里面写的四个按钮,同样使用replace方法,按下却不能跳转到其他的Fragment里。
    你知道什么问题吗?是不是我咋Fragment里面调用托管的Activity的方法有问题?
    看了下你的代码,我觉得问题可能出现在ContactFragment类的第二行。。
    也就是MainActivity activity = (MainActivity) getActivity();
    你等于是自己声明了一个MainActivity,并且将getActivity()得到的fragment所依附的activity赋值给了它。
    而你后面的操作全部都是对你自己的声明的那个activity进行操作,而跟fragment所依附的activity完全没关系。
    你可以试试不要声明activity,而事实上我们一般也不会声明activity的吧,只要要用到activity,
    都直接getActivity()就好了。
      

  7.   


    这样的我会写,而且在MainActivity类里面也已经写了,你可以看我MainActiivity后半部分的代码,而且是有效果的。
    但就是不知道为什么在Fragment里面写的四个按钮,同样使用replace方法,按下却不能跳转到其他的Fragment里。
    你知道什么问题吗?是不是我咋Fragment里面调用托管的Activity的方法有问题?
    看了下你的代码,我觉得问题可能出现在ContactFragment类的第二行。。
    也就是MainActivity activity = (MainActivity) getActivity();
    你等于是自己声明了一个MainActivity,并且将getActivity()得到的fragment所依附的activity赋值给了它。
    而你后面的操作全部都是对你自己的声明的那个activity进行操作,而跟fragment所依附的activity完全没关系。
    你可以试试不要声明activity,而事实上我们一般也不会声明activity的吧,只要要用到activity,
    都直接getActivity()就好了。
    我试了一下,把MainActivity activity=(MainActivity)getActivity();这行代码放到onclick方法了,就可以了!!终于弄好了
    但是我还是不明白,这是什么原因?
      

  8.   


    这样的我会写,而且在MainActivity类里面也已经写了,你可以看我MainActiivity后半部分的代码,而且是有效果的。
    但就是不知道为什么在Fragment里面写的四个按钮,同样使用replace方法,按下却不能跳转到其他的Fragment里。
    你知道什么问题吗?是不是我咋Fragment里面调用托管的Activity的方法有问题?
    看了下你的代码,我觉得问题可能出现在ContactFragment类的第二行。。
    也就是MainActivity activity = (MainActivity) getActivity();
    你等于是自己声明了一个MainActivity,并且将getActivity()得到的fragment所依附的activity赋值给了它。
    而你后面的操作全部都是对你自己的声明的那个activity进行操作,而跟fragment所依附的activity完全没关系。
    你可以试试不要声明activity,而事实上我们一般也不会声明activity的吧,只要要用到activity,
    都直接getActivity()就好了。
    我试了一下,把MainActivity activity=(MainActivity)getActivity();这行代码放到onclick方法了,就可以了!!终于弄好了
    但是这是什么原因?
      

  9.   


    这样的我会写,而且在MainActivity类里面也已经写了,你可以看我MainActiivity后半部分的代码,而且是有效果的。
    但就是不知道为什么在Fragment里面写的四个按钮,同样使用replace方法,按下却不能跳转到其他的Fragment里。
    你知道什么问题吗?是不是我咋Fragment里面调用托管的Activity的方法有问题?
    看了下你的代码,我觉得问题可能出现在ContactFragment类的第二行。。
    也就是MainActivity activity = (MainActivity) getActivity();
    你等于是自己声明了一个MainActivity,并且将getActivity()得到的fragment所依附的activity赋值给了它。
    而你后面的操作全部都是对你自己的声明的那个activity进行操作,而跟fragment所依附的activity完全没关系。
    你可以试试不要声明activity,而事实上我们一般也不会声明activity的吧,只要要用到activity,
    都直接getActivity()就好了。
    我试了一下,把MainActivity activity=(MainActivity)getActivity();这行代码放到onclick方法了,就可以了!!终于弄好了
    但是这是什么原因?好吧,如果这样也能好了的话,那我前面的分析就是错的了。我从来没有在其他类中声明过activity,所以对他的理解
    还不是很正确。。原因我还真不知道了,没能帮到你,sorry。
      

  10.   

    contactfragment中使用FramentTransaction.replace()方法后要提交要调用commit()方法。            ft.replace(R.id.framelayout_content, activity.contactFragment);
                ft.commit();