UIScrollview 分页中的 UITextview
Posted
技术标签:
【中文标题】UIScrollview 分页中的 UITextview【英文标题】:UITextview in a UIScrollview paging 【发布时间】:2013-08-21 19:02:34 【问题描述】:我一直在关注 tutorial 以在 UIScrollview
中翻阅图像。
带有UIScrollview
部分的分页。
我现在想更改它,而不是 UIimageview
,而是显示 UITextview
。分页时使用不同的文本。
不确定如何实现 textview 而不是 imageview。
有什么想法吗?
谢谢
正在使用的代码:
- (void)loadPage:(NSInteger)page
if (page < 0 || page >= self.pageImages.count)
// If it's outside the range of what you have to display, then do nothing
return;
// 1
UIView *pageView = [self.pageViews objectAtIndex:page];
if ((NSNull*)pageView == [NSNull null])
// 2
CGRect frame = self.scrollView.bounds;
frame.origin.x = frame.size.width * page;
frame.origin.y = 0.0f;
//UITextView *theTextView;
theTextView = [[UITextView alloc] initWithFrame:CGRectMake(0, 0, 200, 200)];
theTextView.scrollEnabled = NO;
theTextView.editable = NO;
theTextView.text = [NSString stringWithFormat:@"This is a very long text"];
// 3
//UIImageView *newPageView = [[UIImageView alloc] initWithImage:[self.pageImages objectAtIndex:page]];
theTextView.contentMode = UIViewContentModeScaleAspectFit;
theTextView.frame = frame;
[self.scrollView addSubview:theTextView];
// 4
[self.pageViews replaceObjectAtIndex:page withObject:theTextView];
【问题讨论】:
【参考方案1】:它们都是UIView
的子类。它应该以完全相同的方式工作。如果您不希望它们滚动,只需在 UITextViews
上停用 allowUserInteraction
,UIScrollView
的滚动方式与填充 UIImageViews
的方式完全相同。
【讨论】:
【参考方案2】:添加 UITextView 的方式与添加 UIImageView 完全相同。初始化一个 UITextView,设置你想要的任何属性,并将它作为子视图添加到 UIScrollView。所以无论你在哪里添加 UIImageViews,都用这样的代码替换那个代码:
self.theTextView = [[UITextView alloc] initWithFrame:CGRectMake(0, 0, 200, 200)];
self.theTextView.scrollEnabled = NO;
self.theTextView.editable = NO;
... //however else you want to modify your UITextView
[self.theScrollView addSubview:self.theTextView];
【讨论】:
我刚刚尝试过,但我得到的只是一个空白的文本视图,并且没有发生分页以上是关于UIScrollview 分页中的 UITextview的主要内容,如果未能解决你的问题,请参考以下文章