簡體   English   中英

UIScrollView不會滾動,永遠不會調用委托方法

[英]UIScrollView won't scroll, delegate methods never called

我在UIScrollView的子視圖中有幾個UILabel 我相信我已經像在另一個視圖控制器中正常運行的UIScrollView一樣對其進行了設置,僅此一個不會滾動。 contentSize設置為大於 scrollview 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

我得到滾動視圖框架大小,內容視圖框架大小:240.000000 x 128.000000,320.000000 x 568.000000作為日志打印輸出,但是我從未從委托方法中獲得語句。 scrollview是視圖控制器的唯一子級,因此在我嘗試滾動時它應該接收觸摸事件。 這是怎么回事?

您需要實現viewForZoomingInScrollView:並返回_contentView。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM