3

私の FragmentActivity には、いくつかのページを含む ViewPager が含まれています。1 つのページが変更されると、他のページは通知を受け取る必要があります。私の手順: 1. フラグメントからアクティビティに通知を送信します。 2. フラグメントのリストを取得します。 3. それぞれに通知を呼び出します。

問題は、フラグメントを取得するためのステップ 2 にあります。adapter.getItem(int i) を呼び出すと、アクティビティに関連付けられていない新しい Fragment を返す MyFragmentAdapter.getItem(int i) が呼び出されます。

何か案は?

4

2 に答える 2

3

次のメソッドを YourFragmentPagerAdapter に追加すると、問題が解決します。

public Fragment getActiveFragment(ViewPager container, int position) {
    String name = makeFragmentName(container.getId(), position);
    return  mFragmentManager.findFragmentByTag(name);
}

private static String makeFragmentName(int viewId, int index) {
    return "android:switcher:" + viewId + ":" + index;
}
于 2011-11-10T16:49:07.050 に答える
0

変更されたフラグメントからブロードキャストを送信し、ブロードキャストを受信する他のフラグメントにブロードキャスト レシーバーを持たないのはなぜですか?

于 2011-11-03T17:51:07.720 に答える