使用MvvmCross,我想知道如何在Android Fragments中使用Android.Dialog
。如何將Android.Dialog添加爲Android活動中的Android Fragment?
在iOS上,我們只需要添加的DialogViewController
實例作爲父視圖控制器的孩子:
var Dialog = new DialogViewController (root);
viewController.AddChildViewController (Dialog);
viewController.View.AddSubview (Dialog.View);
是否可以寫爲Android有關的東西嗎?也就是說,在運行時在Activity中添加一個Android.Dialog片段?
... 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
有沒有一些你們實現的東西有關係嗎?
在此先感謝您的任何提示。
感謝@Stuart。它正在工作!我剛更新了我的SplashScreen類,以將其從'MvxSplashScreenActivity'繼承,而不是'Activity'作爲註釋到N = 0情節中。最初的DialogListFragment也按預期工作。 – georgepiva
N = 23是dlg視頻http://mvvmcross.wordpress.com/ – Stuart