Objective C:多个代理

15

我想知道如何使一个控制器成为两个不同对象的委托。

这是否允许,或者像Java中的多重继承一样?

假设我想有一个控制器来响应:<UIAccelerometerDelegate><CLLocationManagerDelegate>

那么头文件会是这样的吗?

@interface MainViewController : UIViewController <UIAccelerometerDelegate> AND <CLLocationManagerDelegate> {
4个回答

43

实际上,它运行得非常好。像这样声明您的接口:

@interface MainViewController : UIViewController <UIAccelerometerDelegate, CLLocationManagerDelegate>

然后实现来自两个委托接口的方法。


6
不,应该是这样的:
@interface MainViewController : UIViewController <UIAccelerometerDelegate, CLLocationManagerDelegate> {

5
@interface MainViewController : UIViewController <UIAccelerometerDelegate, CLLocationManagerDelegate> 

4
如此简单:
@interface MainViewController : UIViewController <UIAccelerometerDelegate, CLLocationManagerDelegate>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接