質問

フラグメントマネージャーとフラグメントトランザクション(android.support.v4.appから)を介して別のフラグメントの内側にフラメライートにフラグメントを入れてみました。コンテナフラグメントには、上部にボタンとテキストビューがあり、下部にフレームレイアウトがあります(レイアウトをプログラムで作成しますが、そのすべてで目を傷つけたくありません)。 createview()は正常に動作し、コンテナの下部にあるframeLayoutにアクセスし、Viewを動的に追加または削除します。

@Override
public void onClick(View button) {      
    FrameLayout frame = (FrameLayout)findViewById(DETAIL_CONTENT_FRAME);
    ImageView im = new ImageView(this);
    im.setImageResource(R.drawable.test);
    frame.addView(im);
}

しかし、FrameLayoutにImageViewの代わりにフラグメントを追加しようとすると、コードは完全にコンパイルされますが、OnClickListener()メソッドが呼び出された後には目的のフラグメントは表示されません。フラグメントのoncreateview()メソッドを確認しましたが、適切なビューを返します...

@Override
public void onClick(View button) {
    ServerDialogFragment serverDialog = new ServerDialogFragment();
    FragmentTransaction addDialog = getSupportFragmentManager().beginTransaction();
    addDialog.add(DETAIL_CONTENT_FRAME, serverDialog);
    addDialog.commit();
}

これに対する答えはありますか?

PS:私はかつてフラグメントを他のフラグメントに追加しようとしましたが、それは機能しましたが、それらはImageViewsのみを保持している単純なフラグメントでした。

役に立ちましたか?

解決

現時点では、他のフラグメント内のフラグメントはサポートされていません。見る:

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top