1

フラグメントダイアログは次のとおりです。

import android.support.v4.app.DialogFragment;  
public static class SensorMeasurmentsDialogFragment extends DialogFragment {

    public static SensorMeasurmentsDialogFragment newInstance(int title) {

        SensorMeasurmentsDialogFragment frag = new SensorMeasurmentsDialogFragment();
        Bundle args = new Bundle();
        args.putInt("title", title);
        frag.setArguments(args);
        return frag;

        @Override public Dialog onCreateDialog(Bundle savedInstanceState) {
            .....
        }
    }
}

私のアクティビティはすでにmapActivityを拡張しているため、呼び出しはfragmentActivityからではなく通常のアクティビティから行われます。

m_measurmentDlg=SensorMeasurmentsDialogFragment.newInstance(R.string.app_name);
m_measurmentDlg.show(m_measurmentDlg.getFragmentManager(),"measurments");

なぜNullなのですか?

4

3 に答える 3

0

私もこの問題に遭遇しました。この問題は、setRetainInstance(true)でのみ発生します。私の回避策は、DialogFragmentのFragmentManagerの代わりに親アクティビティのFragmentManagerオブジェクトを使用することです。

于 2012-12-12T05:47:40.083 に答える
0

フラグメントを使用できるようにするには、アクティビティを FragmentActivity から拡張する必要があります。Google が地図ライブラリを更新するまで、現時点では回避策を使用する必要があるかもしれません。

次のような変更された互換性ライブラリを使用する必要がある場合があります。

https://github.com/petedoyle/android-support-v4-googlemaps

于 2012-11-06T06:40:12.063 に答える