【问题标题】:unable to pass vars with segue无法通过 segue 传递变量
【发布时间】:2012-05-23 17:05:30
【问题描述】:

我正在用故事板做一些非常简单的 Core Data 东西,我可以通过 segue 传递 var,但由于某种原因,这个不会让我这样做。

我正在尝试通过此调用将此类从 BlogDetailsViewcontroller 转移到 BlogDetailsViewcontroller

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{    
    if (segue.identifier == @"User'sBlogList2BlogDetails")
    {
        NSLog(@"this is self.users.sorted %@", self.user.sortedBlogs);

        BlogDetailsViewController *bdvc = segue.destinationViewController;
        bdvc.blog = [self.user.sortedBlogs objectAtIndex:self.tableView.indexPathForSelectedRow.row];
        bdvc.temp = @" this is temp pass";      
    }
}

这是BlogDetailsViewController

@class Blog;

@interface BlogDetailsViewController : UITableViewController
{
   NSString *temp;
}

@property(nonatomic, strong) Blog *blog;
@property(nonatomic, strong) NSString *temp;

@end

@implementation

@synthesize blog, temp;

-(void)viewDidLoad
{
    NSLog(@"%@,%@", blog, temp); //comes back as null for both !!
}

对其他班级来说效果很好,我没有做任何不同的事情。 有什么建议吗?

【问题讨论】:

    标签: objective-c core-data ios5 storyboard segue


    【解决方案1】:

    使用== 表示您正在对segue 标识符进行指针比较,您需要的是

    if ([segue.identifier isEqualToString:@"User'sBlogList2BlogDetails"]) {
    

    【讨论】:

    • 哇,看在保罗身上!我想我在 tut 中看到了它,并没有三思而后行。
    猜你喜欢
    • 1970-01-01
    • 2020-09-04
    • 2017-12-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-28
    • 2014-11-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多