当segue将要执行到另一个视图控制器时,prepareForSegue会通知视图控制器吗?

到现在为止,我已经使用prepareForSegue方法来通知视图控制器,他将要查看来自其他视图控制器的segue,但是如果我是发送segue的vc,我的prepareForSegue(在他与segue发送者的同一个类中)会在他触发segue之前检查是否有要执行的代码?

我问是因为我在这里有一个解决方案,可以执行一个简单的segue,只是从表示笔记的稳定视图行到要编辑的笔记的创建页面...非常简单,但是由于某种原因,它并没有显示我的笔记创建页面,仅将我带到新的干净创建页面。

所以我虽然可能是因为prepareForSegue方法..在这里您可以看到为您提供更多详细信息的问题如何创建segue从表视图推回到编辑模式?

非常感谢您在此方面的帮助。

这是我添加到NotesList表视图控制器中的2种方法:

#pragma mark - delegate

- (void) tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath
{
    [self performSegueWithIdentifier:@"noteSegue" sender:nil];
}


- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender

{
    if ([[segue identifier]  isEqualToString:@"noteSegue"]) {

        NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
        NMNote *note = [self.notes objectAtIndex:indexPath.row];

        NMCreateNotesViewController *destination = [segue destinationViewController];
        destination.textField.text = note.content;
    }
}

并且我确保情节提要中的segue标识符被命名为noteSegue。那么为什么它的注释起作用了...我得到了一个新的TextView而不是用注释内容填充它:/

这是我得到的错误:

在此处输入图片说明

谢谢!

阿什利

prepareForSegue:当前VC而非目标上调用方法UIViewController类参考您可以使用该方法获取对目标VC的引用,并在执行segue之前在其上设置变量/调用方法。

像这样调用segue:

[self performSegueWithIdentifier:@"NAMEOFSEGUE" sender:nil];

然后,您可以像这样准备目标VC:

#import "NMCreateNotesViewController.h"

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"NAMEOFSEGUE"]) {
        NMCreateNotesViewController *destination = [segue destinationViewController];
        [destination createNote]; /* or something similar */
    }
}

编辑:

- (void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    NMNote *note = [self.notes objectAtIndex:indexPath.row];
    [self performSegueWithIdentifier:@"noteSegue" sender:note];
}

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"NAMEOFSEGUE"]) {
        NMCreateNotesViewController *destination = [segue destinationViewController];
         NMnote *note = (NMNote*) sender;
         destination.textField.text = note.content;
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从另一个视图控制器通知视图控制器

来自分类Dev

当它从视图控制器发布到另一个视图控制器时,通知中心第一次不工作

来自分类Dev

tableview segue到另一个视图控制器

来自分类Dev

从一个UIButton到同一个视图控制器或另一个视图控制器创建多个segue

来自分类Dev

准备segue时无法将数据传递到另一个视图控制器

来自分类Dev

将Segue从一个视图控制器重定向到另一个视图控制器

来自分类Dev

推入另一个视图控制器时,根视图控制器的视图消失

来自分类Dev

控制器逻辑仅在您处于另一个视图中时执行

来自分类Dev

控制器逻辑仅在您处于另一个视图中时执行

来自分类Dev

通过 Segue 将对象从表视图单元格传递到另一个视图控制器

来自分类Dev

使用prepareForSegue:sender:或tableView:didSelectedRowAtIndexPath:移至另一个视图控制器:

来自分类Dev

用另一个视图控制器快速更改视图控制器

来自分类Dev

用另一个视图控制器快速更改视图控制器

来自分类Dev

解除视图控制器并显示另一个视图控制器

来自分类Dev

如何将数据从一个视图控制器传递到另一个视图控制器,并且在视图控制器之间有一个显示视图控制器

来自分类Dev

调用另一个视图控制器

来自分类Dev

表视图单元格到另一个视图控制器

来自分类Dev

如何为视图控制器创建嵌入到导航控制器中的另一个视图控制器的序列?

来自分类Dev

如何通过控制器返回另一个控制器的局部视图?

来自分类Dev

如何从另一个视图控制器实例化导航控制器?

来自分类Dev

将数据传递到导航控制器中的另一个视图控制器

来自分类Dev

UINavigationController:在iPad上关闭另一个控制器时显示视图控制器

来自分类Dev

UINavigationController:在iPad上关闭另一个控制器时,显示视图控制器

来自分类Dev

远程推送通知在另一个视图控制器中接收

来自分类Dev

从一个视图控制器从另一个视图控制器加载函数

来自分类常见问题

在另一个视图控制器中将视图控制器添加为子视图

来自分类Dev

Xamarin / Mvvmcross:收到iOS推送通知时,打开另一个视图控制器

来自分类Dev

Xamarin / Mvvmcross:收到iOS推送通知时,打开另一个视图控制器

来自分类Dev

重定向到另一个视图后,MVC控制器再次调用

Related 相关文章

  1. 1

    从另一个视图控制器通知视图控制器

  2. 2

    当它从视图控制器发布到另一个视图控制器时,通知中心第一次不工作

  3. 3

    tableview segue到另一个视图控制器

  4. 4

    从一个UIButton到同一个视图控制器或另一个视图控制器创建多个segue

  5. 5

    准备segue时无法将数据传递到另一个视图控制器

  6. 6

    将Segue从一个视图控制器重定向到另一个视图控制器

  7. 7

    推入另一个视图控制器时,根视图控制器的视图消失

  8. 8

    控制器逻辑仅在您处于另一个视图中时执行

  9. 9

    控制器逻辑仅在您处于另一个视图中时执行

  10. 10

    通过 Segue 将对象从表视图单元格传递到另一个视图控制器

  11. 11

    使用prepareForSegue:sender:或tableView:didSelectedRowAtIndexPath:移至另一个视图控制器:

  12. 12

    用另一个视图控制器快速更改视图控制器

  13. 13

    用另一个视图控制器快速更改视图控制器

  14. 14

    解除视图控制器并显示另一个视图控制器

  15. 15

    如何将数据从一个视图控制器传递到另一个视图控制器,并且在视图控制器之间有一个显示视图控制器

  16. 16

    调用另一个视图控制器

  17. 17

    表视图单元格到另一个视图控制器

  18. 18

    如何为视图控制器创建嵌入到导航控制器中的另一个视图控制器的序列?

  19. 19

    如何通过控制器返回另一个控制器的局部视图?

  20. 20

    如何从另一个视图控制器实例化导航控制器?

  21. 21

    将数据传递到导航控制器中的另一个视图控制器

  22. 22

    UINavigationController:在iPad上关闭另一个控制器时显示视图控制器

  23. 23

    UINavigationController:在iPad上关闭另一个控制器时,显示视图控制器

  24. 24

    远程推送通知在另一个视图控制器中接收

  25. 25

    从一个视图控制器从另一个视图控制器加载函数

  26. 26

    在另一个视图控制器中将视图控制器添加为子视图

  27. 27

    Xamarin / Mvvmcross:收到iOS推送通知时,打开另一个视图控制器

  28. 28

    Xamarin / Mvvmcross:收到iOS推送通知时,打开另一个视图控制器

  29. 29

    重定向到另一个视图后,MVC控制器再次调用

热门标签

归档