簡體   English   中英

為什么我的片段的getActivity返回null?

[英]Why does getActivity of my fragment returns null?

我目前在我的主要活動中有一個帖子下載東西frow web,然后我需要在下載完成后更新ViewPager中的Fragments。

下載由服務處理,並在完成后廣播Intent。

所以,基本上,我的主Activity中的代碼是:

public class MyBroadcastReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        ((PositionFragment)mPagerAdapter.getItem(0)).updateUI();
    }
}

和我的PositionFragment:

public void updateUI() {
    mActivity = getActivity();

我真的不明白這是怎么回事。 這聽起來很簡單,但我必須遺漏一些東西!

任何的想法?

編輯:我的適配器:

public class PageAdapter extends FragmentPagerAdapter {
    private List<Fragment> fragments;

    public PageAdapter(FragmentManager fm, List<Fragment> fragments) {
        super(fm);
        this.fragments = fragments;
    }

    @Override
    public Fragment getItem(int position) {
        return this.fragments.get(position);
    }

    @Override
    public int getCount() {
        return this.fragments.size();
    }

    @Override
    public CharSequence getPageTitle(int position) {
        return titles[position];
    }
}

您的片段可能已與活動分離。 有關詳細信息,請參閱此鏈接

只有在調用fragment的onAttach方法后才能調用getActivity() 我相信,這就是問題所在。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM