我想知道是否有人可以解释为什么UIScrollView委托中的任何方法都没有被解雇。
设置场景。我有一个UIViewController,它被推入堆栈。在这个视图中,我有5个自定义选项卡。在点击每个点击时,我有一个带有5个视图(每个标签一个)的函数来自UIViewController / xib组合。
ExercisePhotoView *exercisePhotoView = [[ExercisePhotoView alloc] initWithNibName:@"ExercisePhotoView" bundle:nil];
exercisePhotoView.exercise = self.exercise;
[self.photoView addSubview:exercisePhotoView.view];
[exercisePhotoView release];
在其中一个被加载的视图中,我有一个带有一些图像的滚动视图(上面的代码块是所述视图)。 self.exercise 是一个NSManagedObject。图像被精确地加载到滚动视图控制器中并且分页工作。然而,什么不起作用是任何ScrollView的委托方法,如
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)theScrollView
我在头文件中包含了对委托的引用,如此。
@interface ExercisePhotoView : UIViewController <UIScrollViewDelegate> {
IBOutlet UIScrollView *scrollView;
IBOutlet UIPageControl *pageControl;
Exercise *exercise;
NSMutableArray *exerciseImageList;
}
是否有我遗失或做错的事情。我无法在 ExercisePhotoView 类上触发任何委托方法。
提前谢谢。
答案 0 :(得分:2)
您必须将self.scrollView.delegate
设置为应作为scrollView委托的对象。
答案 1 :(得分:1)
虽然您已声明ExercisePhotoView实现了UIScrollViewDelegate协议,但您尚未告知它是UIScrollView的任何实例,它是它的委托。
因此,在ExercisePhotoView的viewDidLoad
(或其他适当的方法)中,您需要声明ExercisePhotoView是特定scrollView实例的委托:
scrollView.delegate = self;
答案 2 :(得分:0)
请务必在标题中添加@property (nonatomic, retain) UIScrollView *scrollView;
,在 .m
@synthesize scrollView;
答案 3 :(得分:0)
您必须告诉滚动它的委托是谁,以便我知道将委托通知发送给谁。