明确分配getActivity()

时间:2015-09-30 16:53:26

标签: android android-activity android-viewpager fragment

如何明确指定名称的getActivity()?我有一个viewpager,有两个片段属于不同的活动。让我们说FragmentA和FragmentB。 FragmentA扩展了BaseFragmentA,FragmentB扩展了BaseFragmentB。 BaseFragmentA属于BaseActivityA,BaseFragmentB属于BaseActivityB。包含fragmentA和fragmentB的ViewPagerAdapter属于MainActivity.So。当我在任何这些片段中执行getActivity()时,它会获得MainActivity.But我实际上想要ActivityA或ActivityB。 任何解决方法?

1 个答案:

答案 0 :(得分:0)

在两个片段中都覆盖onAttach方法,您可以尝试使用以下代码

 Activity fragmentAttachedActivity;

    @Override
        public void onAttach(Context context) {
            super.onAttach(context);
            if(context instanceof ActivityA){
               fragmentAttachedActivity= (ActivityA)context;
            } else if(context instanceof ActivityB){
               fragmentAttachedActivity= (ActivityB)context;
            }
        }