我在segue时在场景之间传递数据时遇到麻烦

时间:2015-07-23 22:36:14

标签: ios objective-c cocoa-touch uiviewcontroller segue

我已经完成了使用prepareForSegue:sender:方法通过场景传递数据的教程,但是现在当我尝试使用传递的数据时,它是空的。我也使用导航控制器。

这里是.h -

#import <UIKit/UIKit.h>

#import "TalkChatTableViewController.h"

@interface CreateChatTableViewController : UIViewController 

@end

这里是.m

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

    if ([[segue identifier] isEqualToString:@"idSegueMyChatsToChat"]){
             TalkChatTableViewController *tctvc = [segue destinationViewController];
             tctvc.chatObjectId = @"test";
             NSLog(@"%@", tctvc.chatObjectId);
             //succesfully logs out test
          }
}

当我登录上面的方法时,它很好。但是当我去TalkChatTableViewController课程时,它并没有在viewDidLoad中注销;它是空的。

标题如下:

#import <UIKit/UIKit.h>
@interface TalkChatTableViewController : UITableViewController
@property (nonatomic) NSString * chatObjectId;
@end

然后最后是.m -

#import "TalkChatTableViewController.h"

@implementation TalkChatTableViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    NSLog(@"%@", self.chatObjectId);
   // logs null
}

@end

1 个答案:

答案 0 :(得分:0)

TalkChatTableViewController * tctvc = (TalkChatTableViewController *)[segue destinationViewController];

这就是工作的结果。