0
每次在SO(以及其他地方)询问此问题时,答案都是“确保contentSize大于视图大小,并将其设置为viewDidLoad!”是的,我正在这样做,那么还有什么可能是这个问题?UIScrollView不滚动
在我的控制器的loadView:我有这些线路设置我的观点:
descriptionView = [[DetailDescriptionView alloc] initWithFrame:CGRectMake(160, 60, 160, 180)];
descriptionScrollView = [[DetailDescriptionScrollView alloc] initWithFrame:CGRectInset(CGRectMake(0, 0, 160, 180), 5, 5)];
[descriptionView addSubview:descriptionScrollView];
[self.view addSubview:descriptionView];
然后,在viewDidLoad中,我有这样的代码:
[descriptionScrollView setDescriptionText:@"<lots of text that will require scrolling>"];
NSUInteger contentHeight = <** calculations on the text to determine height **>
[descriptionScrollView setContentSize:CGSizeMake(descriptionScrollView.frame.size.width, contentHeight)];
NSLog(@"ContentSize: %@", NSStringFromCGSize(descriptionScrollView.contentSize));
NSLog(@"DescriptionScrollView Size: %@", NSStringFromCGRect(descriptionScrollView.frame));
那些NSLogs确认所有应罚款:
ContentSize: {150, 330}
DescriptionScrollView Size: {{5, 5}, {150, 170}}
当谈到做文本的实际绘图时,我在使用Core Graphics scrollview的drawRect:方法。这里是相关的片段:
CGRect descriptionTextBox = CGRectMake(self.frame.origin.x, 20, self.frame.size.width - 10, 330);
[self.descriptionText drawInRect:descriptionTextBox withFont:[UIFont fontWithName:kMediumFontName size:kFontSizeMicro]];
我认为这涵盖了我想要做的。滚动不会发生。任何人都可以推荐一个策略来弄清楚要做什么尝试做这项工作?