Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/109.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 从继承的类调用方法_Iphone_Ios - Fatal编程技术网

Iphone 从继承的类调用方法

Iphone 从继承的类调用方法,iphone,ios,Iphone,Ios,我有两个类别A和B。在类别A中,我使用: @interface A : B 在B类中,我有一行代码: self.navigationItem.rightBarButtonItem = [UIBarButtonItem barItemWithImage:[UIImage imageNamed:@"Add-button-normal"] highlightedImage:[UIIma

我有两个类别A和B。在类别A中,我使用:

@interface A : B
在B类中,我有一行代码:

self.navigationItem.rightBarButtonItem = [UIBarButtonItem barItemWithImage:[UIImage imageNamed:@"Add-button-normal"]
                                                          highlightedImage:[UIImage imageNamed:@"Add-button-active"]
                                                                    target:self
                                                                    action:@selector(showPopoverUI:)];
如何访问A类中的这些项目,我尝试了这一行代码,但不起作用:

self.navigationItem.rightBarButtonItem = [UIBarButtonItem barItemWithImage:[UIImage imageNamed:@"Add-button-normal"]
                                                          highlightedImage:[UIImage imageNamed:@"Add-button-active"]
                                                                    target:self.parentViewController
                                                                    action:@selector(showPopoverUI:)];
我得到了这个错误:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[B showPopoverUI:]: unrecognized selector sent to class 0x226308'

当您想要调用
super
类方法时,您需要调用
super

您需要调用
super-navigationItem…

或者


当您想要调用
super
类方法时,您需要调用
super

您需要调用
super-navigationItem…

或者


如果你是内在的,你应该能够使用self并调用这个方法,就像它是你自己的一样

尝试:


如果你是内在的,你应该能够使用self并调用这个方法,就像它是你自己的一样

尝试:


在第二个示例中,您的目标是parentViewController,而应继续以self为目标。

在第二个示例中,您的目标是parentViewController,而应继续以self为目标。

在这两个代码示例中,您的目标不同。试着在第二个例子中瞄准自我。谢谢Stefan!这是工作。请把你的答案贴出来,把它标记为正确。我把它作为一个答案加上去了,很高兴它起作用了!在这两个代码示例中,您的目标是不同的。试着在第二个例子中瞄准自我。谢谢Stefan!这是工作。请把你的答案贴出来,把它标记为正确。我把它作为一个答案加上去了,很高兴它起作用了!您调用self.navigation,我建议使用super.navigation或yuo需要装箱一个super实例来调用其导航。您调用self.navigation,我建议使用super.navigation或yuo需要装箱一个super实例来调用其导航。
self.navigationItem.rightBarButtonItem = [UIBarButtonItem barItemWithImage:[UIImage imageNamed:@"Add-button-normal"]
                                                          highlightedImage:[UIImage imageNamed:@"Add-button-active"]
                                                                    target:self
                                                                    action:@selector(showPopoverUI:)];
self.navigationItem.rightBarButtonItem = [UIBarButtonItem barItemWithImage:[UIImage imageNamed:@"Add-button-normal"] highlightedImage:[UIImage imageNamed:@"Add-button-active"]target:self action:@selector(showPopoverUI:)];