方案1:
利用intent附加参数的方式,在fragment所在的activity中判断一下intent的附加参数,从而设置显示哪个fragment,这个比方案一要简单明了一些。大概思路如下
你可以在你startactivity的地方,对intent加入一个参数,例如,intert.putExtra("fragid",1);然后再你的fragment的主activity中的oncreate或者Onresume函数中获得这个id,例如int id = intert.getIntegerExtra("fragid",-1);然后根据这个id跳转即可
if(id > 0) {
if(id == 目标id) myfragment.setvisible(true);
}
方案1:
首先应该明确的是在fragment中,也是可以定义onResultActivity()函数。我们先来重新定义一下这个场景。activity A创建了fragment B,在fragment B中用startactivityResult()函数跳转到activity C。
首先,肯定不会执行activity C中的onResultActivity()函数。
其次,首先肯定会去执行activity A中的onResultActivity()函数,不管你在fragment B中是用的getactivity().onResultActivity(),还是直接使用onResultActivity()。
而且,如果你重写了activity A的onActivityResult方法
而没有super.onActiivtyResult(),那么你在fragment B里的onActivityResult不会被调用。因为super.onActiivtyResult()里面会去找当前activity A中的fragment,并去调用fragment 的onActiivtyResult。
好东西很不错 要是能给几个运行截图就好了 查看原帖>>