81

断片的な活動があります。

XML:

 <fragment android:name="com.example.androidcalculator.ResultFragment"
            android:id="@+id/result_fragment"
            android:layout_weight="1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

そして、ActivityのメソッドからResultFragmentからメソッドを呼び出したいのですが、getSupportFragmentManagerは「存在しません」:

FragmentManager fragMan = getSupportFragmentManager();

どうすればこれを解決できますか?

4

10 に答える 10

192

あなたのアクティビティはサポートライブラリからFragmentActivityを拡張しないため、メソッドはスーパークラスに存在しません

API 11以降をターゲットにしている場合は、代わりにActivity.getFragmentManagerを使用できます。

于 2012-11-18T19:40:44.620 に答える
61

AppCompatActivityの代わりにクラスを拡張するActivity

于 2015-09-28T18:03:07.797 に答える
20

親から現在のアクティビティを取得し、このコードを使用する

getActivity().getSupportFragmentManager()
于 2015-08-04T20:17:40.293 に答える
4

単に使用する

 FragmentManager fm = getActivity().getSupportFragmentManager();

MainLayoutでフラグメントインフレーションにアクセスするときは、Castingまたはを使用することを常に忘れないでくださいgetActivity()

于 2016-11-12T07:13:45.270 に答える
4

FragmentActivity代わりに拡張する必要がありますActivity

于 2018-02-07T07:03:59.167 に答える
3

輸入

import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
于 2014-10-02T13:46:48.260 に答える
2

これは私のために働いた。androidAPI19以降を実行しています。

FragmentManager fragMan = getFragmentManager();
于 2018-04-10T07:51:40.443 に答える
1
getCurrentActivity().getFragmentManager()
于 2016-11-12T01:11:45.383 に答える
0

それ以外の

extends Fragment

使用する

extends android.support.v4.app.Fragment 

これは私のために働きます。*API14以降の場合

于 2019-09-15T04:58:24.003 に答える
-1

使用しましたFragmentActivity

TabAdapter = new TabPagerAdapter(((FragmentActivity) getActivity()).getSupportFragmentManager());
于 2015-08-30T11:11:33.877 に答える