繁体   English   中英

以编程方式为.xib中的UIScrollView设置委托

[英]Set Delegate Programmatically for a UIScrollView in .xib

我的.xib文件中有一个UIView。 (请注意,不是UIControlView)

@interface OfferUIView : UIView

所以我的UIView的自定义类是OfferUIView

我想给它添加一个scrollView。 当我使用xcode功能添加它时,我只是将scrollview的委托连接到OfferUIView。 如何在OfferUIView.m中以编程方式进行操作?

这就是我的意思:

self.scrollView = [[UIScrollView alloc] initWithFrame: frame];
self.scrollView.delegate = self; 

但是我对delegate = self发出警告,如下所示:

Assigning to id<UIScrollViewDelegate> from incompatible type OfferUIView

你知道我该怎么解决吗?

编辑:

当我使用

@interface OfferUIView : UIView <UIScrollViewDelegate>

self.pageViews = [[NSMutableArray alloc] init];
    for (NSInteger i = 0; i < pageCount; ++i) {
        [self.pageViews addObject:[NSNull null]];
    }

    CGRect frame = self.view.bounds;
    self.scrollView = [[UIScrollView alloc] initWithFrame: frame];
    CGSize pagesScrollViewSize = self.view.frame.size;
    self.scrollView.contentSize = CGSizeMake(pagesScrollViewSize.width * self.pageImages.count, pagesScrollViewSize.height);
    self.scrollView.delegate = self;

它应该是UIScrollView中的几个图像,但是滚动不起作用。

您必须指定您的类应符合UIScrollViewDelegate

@interface OfferUIView : UIView <UIScrollViewDelegate>
scrollView =[[UIScrollView alloc]initWithFrame:CGRectMake(10, 402, 750, 600)];
scrollView.delegate = self;
scrollView.scrollEnabled = YES; 
[self.view addSubview:scrollView];
[scrollView setContentSize:CGSizeMake(654, ([reports_list count]+1)*110)];

它为我工作...尝试一下..然后忽略框架。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM