0

カスタム Fragment の属性を開始する適切な方法があるかどうかを知りたいです。コンストラクターを定義することはお勧めしません。

いくつかの例を見てみましょう:

class MyFrag extends Fragment{
private int id;
private String name;
//no constructors
//oncreateview ...

public void onStart() {
super.onStart();
//I was using callback method before
//setId(callback.getId);
}
public void setId(int id){ this.id=id;}
public void setName(String name){ this.name=name;}
}

私の質問は、フラグメントをインスタンス化し、setter を介して属性を設定し、fragmentManager を使用してフラグメントを追加することです。属性のセッターを達成するのは良い方法ですか?

pojo の属性を使用してフラグメントのビューの状態を初期化することで、複数のフラグメントで構成される LinearLayout を作成しようとしたときに、その質問に行き着きました。コールバック メソッドは、フラグメントがそのインデックスを記述する属性を持つまで役に立ちません (アクティビティ リストで pojo を取得するため)。

4

1 に答える 1

0

試す:

Bundle bundle=new Bundle();
bundle.putString("message", "From Activity");
fragment.setArguments(bundle);

通話アクティビティから

于 2013-10-04T21:54:49.380 に答える