本菜开源的一个自己写的Demo,希望能给Androider们有所帮助,水平有限,见谅见谅..
https://github.com/zhiaixinyang/MyFirstApp
刚刚使用回调的时候遇到了一个问题。
问题描述:App大体框架是一个ViewPager其中包含三个Fragment。在第一个Fragment的使用回调。但是Fragment是new出来的,突然不知道怎么获取此Fragment的实例。
后来百度到了答案。特此记录下来。
解决方案:
在Activity中使用
getSupportFragmentManager().findFragmentByTag("android:switcher:" + R.id.viewPager + ":0");
其中R.id.viewPager:ViewPager的ID。
0,表示第一个Fragment。
后续补充:
关于Fragment和Activity相互之间的通讯,很多书都会涉及到。今天总结一下霖神的《第一行代码》里的相关讲解...
Fragment中获取Activity:可以通过getActivity()强制类型转化成对应的Activity。
Activity中获取Fragment:最上边那个一种特殊的应用情况。ViewPager中的Fragment。那么正常情况下呢?
通过getXXXXXXFragmentManager()获取到FragmentManager类之后,通过findFragmentById传入layout里<fragment>的id,即可获得对应的Fragment。
当然如果是new出来的Fragment....那就直接用咯。