0

ユーザーに編集を許可しているビューがありますEntryElement。「完了」ボタンのデリゲートを介してクリックイベントを正常に登録しますが、現在のビューを閉じて前のビューに移動することはできません。これが私が今試していることです:

AppDelegate.navigation.PresentedViewController.DismissViewController(true, null);

私も試しました:

AppDelegate.navigation.PresentedViewController.RemoveFromParentViewController();

navigationただのUINavigationController

編集:

私はMonotouch.Dialogすべてのビューを構築するために使用しています。このビューはメソッドによって作成されます。完了ボタンをクリックしたら、前のビューに戻りたいです。メソッドの内容は次のとおりです。

public static void EditClientTypeView (string typeName, string typeId)
        {
            DialogViewController editClientTypeVC;
            UIBarButtonItem doneButton = new UIBarButtonItem (UIBarButtonSystemItem.Done);

            EntryElement element = new EntryElement("Type Name", "Name of client type", typeName, false);

            var root = new RootElement ("Edit Type") {
                new Section () {
                    element
                }
            };

            editClientTypeVC = new DialogViewController (root, true);
            editClientTypeVC.NavigationItem.RightBarButtonItem = doneButton;

            doneButton.Clicked += (sender, e) => {
                // Need to save the edited client type to the database
                Console.WriteLine("Done button clicked signifying the user is finished editing");
                AppDelegate.navigation.PresentedViewController.RemoveFromParentViewController();
                //AppDelegate.navigation.DismissViewController(true, null);
            };

            AppDelegate.navigation.PushViewController(editClientTypeVC, true);
        }

どんな助けでも大歓迎です!

4

1 に答える 1

4

ビュー コントローラーをナビゲーション スタックにプッシュしているため、スタックからポップして破棄します。 UINavigationControllerには 3 つの POP メソッドがあります

  • PopToRootViewController - ナビゲーション コントローラーのルート ビューに戻る
  • PopToViewController - 特定のビュー コントローラーに戻ります
  • PopViewController - 「前の」View Controller に戻ります
于 2013-02-15T00:43:19.013 に答える