UIScrollView不会滚动,委托从未调用过的方法

时间:2015-08-21 01:57:25

标签: ios objective-c uiscrollview

我在UILabel的子视图中有几个UIScrollView。我相信我的设置与我在另一个视图控制器中的功能UIScrollView完全相同,只有这一个不会滚动。 contentSize设置为更大而不是滚动视图frame大小,并且scrollview delegate设置为self。视图在Interface Builder中连线,UIScrollview启用了滚动,弹跳,用户交互和多点触控。孩子UIView也启用了用户互动。这是我的代码:

.h文件

#import <UIKit/UIKit.h>

@interface CreditsViewController : UIViewController <UIScrollViewDelegate>

@end

.m文件

#import "CreditsViewController.h"

@interface CreditsViewController ()
@property (nonatomic, strong) IBOutlet UIScrollView *scrollView;
@property (nonatomic, strong) IBOutlet UIView *contentView;

@end

@implementation CreditsViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    self.scrollView.delegate = self;
    _scrollView.contentSize = _contentView.frame.size;
    NSLog(@"scrollview frame size, contentview frame size: %f x %f, %f x %f", _scrollView.frame.size.width, _scrollView.frame.size.height, _contentView.frame.size.width, _contentView.frame.size.height);
}
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView {
NSLog(@"in scrollViewWillBeginDragging");
}

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    NSLog(@"in scrollViewDidScroll");
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
}
@end

我得到 scrollview框架大小,contentview框架大小:240.000000 x 128.000000,320.000000 x 568.000000 作为日志打印输出,但我从来没有从委托方法获取语句。 scrollview是视图控制器的唯一子节点,因此当我尝试滚动时它应该接收触摸事件。发生了什么事?

1 个答案:

答案 0 :(得分:-1)

您需要实现viewForZoomingInScrollView:并返回_contentView。