如何验证从 UIButton addtarget 到不同的视图控制器



我正在为不同UIViewController的视图添加一个UIButton。我需要目标选择器从 json 值指向该视图控制器

- (IBAction)timeline:(id)sender {
    if ([_NoTimeline isEqualToString:@"timeline not available :)"]) {
        NearmeNOViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"NONearmeViewController"];
        [self presentViewController:vc animated:YES completion:nil];
    } else {
        NearmeFrendViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"NearmeFrendViewController"];
        [self presentViewController:vc animated:YES completion:nil];
    }
}

在这里,如果时间轴不可用,您将NSString "timeline not available :)"分配给变量self.NoTimeline。并为变量self.NoTimeline分配NSArray.如果可以正确编辑 api,请添加状态键。如果没有试试这个

- (IBAction)timeline:(id)sender{
if ([self.NoTimeline isKindOfClass:[NSString class]]) {
    NearmeNOViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"NONearmeViewController"];
    [self presentViewController:vc animated:YES completion:nil];
} 
else {
    NearmeFrendViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"NearmeFrendViewController"];
    [self presentViewController:vc animated:YES completion:nil];
   }
}

这里的问题似乎是_NoTimeline并不总是 NSString 类型。因此,isEqualToString: 操作失败。

您可以使用以下命令检查 NSString:

if ([_NoTimeline isKindOfClass:[NSString class]] {
   // Your code
}

最新更新