如何检查哪个UIViewController处于活动状态

时间:2010-08-04 05:31:20

标签: iphone

我需要检查哪个UIViewController是活动的,所以我根据结果实现了一些情况。

[self.navigationController.visibleViewController className]

这总是返回null。

我正在检查这句话:

if([iDetailController isKindOfClass:[IDetailController class]])

但它失败了,如果我在这里做错了,请帮助我。

2 个答案:

答案 0 :(得分:1)

使用[self.navigationController.topViewController class]获取活动视图控制器的类。所以if ([self.navigationController.topViewController isMemberOfClass:[IDetailController class]]) {...}应该有用。

答案 1 :(得分:0)

使用以下方法:

if ([self isMemberOfClass:[IDetailController class]]) {

CFShow(@"Yep, it's the IDetailController controller"); }

isMemberOfClass告诉您实例是否是该类的确切实例。还有isKindOfClass:

if ([self isKindOfClass:[BaseView class]]) {

CFShow(@"This will log for all classes that extend BaseView");`

}

isKind测试该类是某个类的扩展名。