gpt4 book ai didi

ios - isKindOfClass Bool if 语句记录 NO

转载 作者:行者123 更新时间:2023-11-29 12:19:01 24 4
gpt4 key购买 nike

我正在检查 toViewController(我的 tabBar 中的第二个选项卡)是否属于 MatchCenterViewController 类,但是 else 语句正在运行,这告诉我它不属于那个类。

我确定该选项卡中的 UIViewController 已连接到 MatchCenterViewController,那么还有什么可能导致此 if 语句不起作用?

NSLog(@"numberOfMatches is 1");

UIViewController *toViewController = [self.tabBarController viewControllers][1];

NSLog(@"toViewController: %@", toViewController);

if ([toViewController isKindOfClass:[MatchCenterViewController class]]) {

NSLog(@"2nd matchcenter if statement works");
MatchCenterViewController *matchViewController = (MatchCenterViewController *)toViewController;

matchViewController.didAddNewItem = YES;

NSLog(@"alright they're set, time to switch");

}
else {
NSLog(@"toViewController is not MatchCenterViewController");
}
[self.tabBarController setSelectedIndex:1];

最佳答案

您可以添加 NSLog(@"toViewController is of class: %@", NSStringFromClass([toViewController class]); 并查看实际的 View Controller 类。

或者如果didAddNewItem是只有MatchCenterViewController有的属性,你可以这样试试:

if ([toViewController respondsToSelector:@selector(setDidAddNewItem:)]) {
// this is MatchCenterViewController
} else {
// this is not MatchCenterViewController
}

关于ios - isKindOfClass Bool if 语句记录 NO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31224553/

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