0

我正在使用 UIPageViewController 并且我已经制作了自己的协议,如下所示:

@protocol MyDataDelegate <NSObject, UIPageViewControllerDelegate>

- (void)recieveData:(NSString *)theData;

@end

如何将 UIPageViewController 的委托设置为 self 以便我可以使用这些委托方法?正常的代码是,self.delegate = self;但是由于我已经创建了另一个委托,它给了我一个警告"Assigning to 'id<MyDataDelegate>' from incompatible type 'PageScrollViewController *const_strong'",我想将它设置为 self 以便我可以访问 UIPageViewController 的委托方法

4

2 回答 2

1

您的子类使 UIPageViewController 的委托属性黯然失色。给您的委托属性一些其他名称,例如:@property (nonatomic,weak) id myDelegate;

于 2013-04-30T14:47:10.593 回答
0

您是否已宣布您的PageScrollViewController班级符合MyDataDelegate?您可以在主@interface声明中执行此操作:

@interface PageScrollViewController : UIPageViewController <MyDataDelegate>
   // ...
@end

或者在您的 .m 文件中的类类别中:

@interface PageScrollViewController () <MyDataDelegate>
    // ...
@end
于 2013-04-30T14:42:01.963 回答