相关疑难解决方法(0)

如何从UINavigationController弹出视图并在一次操作中将其替换为另一个视图?

我有一个应用程序,我需要从UINavigationController的堆栈中删除一个视图,并将其替换为另一个.情况是第一个视图创建一个可编辑的项目,然后用该项目的编辑器替换它自己.当我在第一个视图中执行明显的解决方案时:

MyEditViewController *mevc = [[MYEditViewController alloc] initWithGizmo: gizmo];

[self retain];
[self.navigationController popViewControllerAnimated: NO];
[self.navigationController pushViewController: mevc animated: YES];
[self release];
Run Code Online (Sandbox Code Playgroud)

我的行为非常奇怪.通常编辑器视图会出现,但如果我尝试使用导航栏上的后退按钮,我会得到额外的屏幕,有些空白,有些只是搞砸了.标题也变得随机.就像导航堆栈完全被冲洗一样.

什么是解决这个问题的更好方法?

谢谢,马特

iphone cocoa-touch uinavigationcontroller uiviewanimation

83
推荐指数
5
解决办法
8万
查看次数

如何一次弹出模态视图和上一个导航控制器视图?

我还没有在谷歌或堆栈溢出上找到类似的东西......

我想要做的是同时弹出模态视图和前一个视图.例如,查看日历应用.当您在Edit"屏幕上并选择Delete Event"时,您将被带回日历视图.在" Edit"画面,将其模态呈现弹出以及所述的" Event"画面(其中用户被刚刚观看日历事件).我遇到的问题是我知道如何弹出模态视图......但是从同一UIViewController个子类(Edit本例中的"屏幕")中,如何弹出一个非模态的视图

我正在考虑像往常一样弹出模态视图,然后发布NSNotification到' Event'(例如)屏幕的UIViewController子类并告诉它也弹出该视图.

另一件事是,对于动画,它应该是dismissModalViewControllerAnimated动画(向下滑动)而不是popViewControllerAnimated动画(向左滑动).

谢谢.

另外,寻找比更好的解决方案,这在我的情况下不起作用(至少没有popViewControllerAnimated)

iphone uinavigationcontroller modalviewcontroller ios

2
推荐指数
1
解决办法
6920
查看次数