gpt4 book ai didi

iphone - 通过使用 2 个按钮操作调用相同 View 导致 segue 出错

转载 作者:行者123 更新时间:2023-11-28 22:25:21 26 4
gpt4 key购买 nike

我在 myview1 中声明了两个不同的推送 segue 以显示 myview2。从两个不同的按钮操作调用两个不同的 push segue。它显示了 myview2

myview2 中,我将 navigationcontroller 弹回按钮操作中的 myview1

我在 ios7 中遇到错误,但在以前的 iOS 版本中它可以正常工作:

嵌套的推送动画会导致导航栏损坏

在意外状态下完成导航转换。导航栏 subview 树可能会损坏。

我的观点2:

- (IBAction)saveButtonPressed:(id)sender {

if ([self.addString isEqualToString:@"ADD"]) {
NSLog(@"11111111add save");
Xen_ViewController *viewcontroller = [[Xen_ViewController alloc] init];
DOING some method calling.....
//[self.navigationController popViewControllerAnimated:YES];
}
else if ([self.addString isEqualToString:@"UPDATE"]){
NSLog(@"222222222update save");
Xen_ViewController *viewcontroller = [[Xen_ViewController alloc] init];
DOING some method calling.....
.....
}
[self.navigationController popViewControllerAnimated:YES];

我的观点1:

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([segue.identifier isEqualToString:@"CallingConfigurationEdit"]){
//UINavigationController *navController = (UINavigationController *)segue.destinationViewController;
Xen_ConfigurationViewController *controller = segue.destinationViewController;
controller.addString = @"ADD";
}

if ([segue.identifier isEqualToString:@"Updation"])
{
Xen_ConfigurationViewController *controller = segue.destinationViewController;
controller.updateString = self.string;
controller.addString = @"UPDATE";
}

如何克服这个错误?

最佳答案

您收到该错误是因为您声明了两个不同的推送转场。在你的情况下没有必要这样做。只声明一个 push segue 并且不要忘记给它一个标识符。我测试了您的代码并且工作正常,请记住,无论您在 saveButtonPressed 方法的 if 语句中执行什么方法调用,最终都会弹出当前的 viewController,您将返回到 MyView1 Controller 。

关于iphone - 通过使用 2 个按钮操作调用相同 View 导致 segue 出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19158461/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com