现在的android主界面,普遍离不开FragmentActivity和Fragment。也经常会碰到这么一个问题,从其他界面跳回主界面时,无法分辨出回到了哪个fragment里面。一般我们会在fragment·的onResume 方法里面做一些处理,如果回到当前的Fragment,能让数据显示正常。但是也有一些特殊情况,我们需要知道确切的fragment才能进行处理的。特别是在使用StartActivityResult的时候,返回到的是Activity的onActivityResult方法里面,而不是Fragment的onActivityResult里。
我们要判断是在哪个fragment,其实很简单:
通过framentManager获取当前界面的Fragment .假设R.id.main_content就是我们Activity里面用于添加Fragment的底层布局ID
Fragment current = getFragmentManager().findFragmentById(R.id.main_content);
if (current != null && current instanceof DisplayFragment)