我正在尝试访问目标C类中的一个函数,该函数从原始控制器扩展UIViewController。当我这样做时,其中一个属性为零,并且该方法无法正常工作。从类别内部访问(使用UITapGestureRecogniser)时,属性在内存中具有值并且工作正常。我错过了一些看起来很奇怪的东西吗?
从UIViewController调用:
[self dismissCurrentPopinControllerAnimated:YES completion:nil];
来自类别:(UIViewController_MaryPoppin)
- (void)dismissCurrentPopinControllerAnimated:(BOOL)animated completion:(void(^)(void))completion
{
UIViewController *presentedPopin = self.presentedPopinViewController;
当从类别外部调用时,presentPopin控制器为nil。
答案 0 :(得分:0)
我的错误,似乎有了这个类别(UIViewController + MaryPoppin)你需要向呈现的控制器发送消息(在这种情况下是一个UINavigationController)所以自己是不正确的,尽管编译器仍然没有抱怨。
[self navigationController]dismissCurrentPopinControllerAnimated:YES completion:nil];
这似乎已经解决了问题