Roman Nurik のWizardPagerライブラリを使用してカスタム オブジェクトを追加および編集しようとしていますが、特定のページにデータを割り当てるのに問題があります (データを保存する準備ができたら、データにアクセスするのにも苦労すると思います)。findByKey() の概念が理解できず、BranchPage の「下」にあるページにデータを割り当てることができません。
例:
私のウィザード モデルは次のようになります。
protected PageList onNewRootPageList() {
return new PageList(
new CustomerInfoPage(this, "Page 1"),
new BranchPage(this, "Branch page")
.addBranch("Alternative 1", new SingleFixedChoicePage(this, "Page 2.1"))
.addBranch("Alternative 2", new CustomerInfoPage(this, "Page 2.2"))
);
}
MainActivity.java で以下のコードを使用すると、最初のページにデータを割り当てることができます。(ここでアレンチャンの答えに感謝します)。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.wizard_main);
...
Bundle data = new Bundle();
if (!TextUtils.isEmpty(CustomerInfoPage.MY_DATA_KEY)) {
data.putString(CustomerInfoPage.MY_DATA_KEY, person.getName());
mWizardModel.findByKey("Page 1").resetData(data);
}
しかし、BranchPage のサブページとして機能する 2 番目の CustomerInfoPage にデータを割り当てるにはどうすればよいでしょうか? 私はあらゆる種類のキーを試しました
mWizardModel.findByKey("Branch page:Page 2.2").resetData(data);
しかし運がない。私が試したことはすべて、その特定の行で NullPointerException を引き起こします。
アドバイスをお願いします - 前もって感謝します!