Android.Dialog
MvvmCross を使用して、 Android Fragments 内での使用方法を知りたいです。
DialogViewController
iOS では、親ビュー コントローラーの子として のインスタンスを追加するだけです。
var Dialog = new DialogViewController (root);
viewController.AddChildViewController (Dialog);
viewController.View.AddSubview (Dialog.View);
Androidに関連するものを書くことは可能ですか? つまり、実行時にアクティビティ内に Android.Dialog Fragment を追加しますか?
... OnCreate (Bundle bundle) {
...
var Dialog = new DialogListFragment ();
Dialog.Root = root;
var transaction = FragmentManager.BeginTransaction ();
transaction.Replace (Resource.Id.DialogFrame, Dialog);
transaction.Commit ();
上記のコードを試してみましたが、コンパイルはできますが、実行時に失敗します。
[Android.Dialog] LoadLayout failed: You must call DroidResources.Initialise(Resource.Layout) before using Dialogs
最後に、同じルート要素を MvxDialogActivity のインスタンスに追加すると、正しく機能しています。
DialogListFragment ソース コード: https://github.com/slodge/MvvmCross/blob/fffe39c9e3a9eae24e55fdf58cf6f84d71a4654d/CrossUI/CrossUI.Droid/Dialog/DialogListFragment.cs
何人かは関連するものを実装しましたか?
ヒントをお寄せいただきありがとうございます。