我想展示一段有很多行的文本。我将一个多行标签添加到了滚动视图中,但是它没有显示任何内容。看起来这不是使用滚动视图的正确方式。如何使用滚动视图,以便用户可以向下拖动查看更多文本?
我想展示一段有很多行的文本。我将一个多行标签添加到了滚动视图中,但是它没有显示任何内容。看起来这不是使用滚动视图的正确方式。如何使用滚动视图,以便用户可以向下拖动查看更多文本?
苹果公司的UIScrollView文档相当不错,你应该从那里开始并了解这个类。
将ScrollView视为一个大的视图表面,屏幕可以在其上滑动。您可以向ScrollView添加子视图,然后滚动就像将屏幕定位在ScrollView上一样 - 屏幕就像一个窗口,您可以透过它看到ScrollView下方的内容的一部分。
为此,ScrollView具有比普通UIView多一些属性 - 但在一个重要方面它与UIView相似:它本身不直接呈现任何内容。您需要添加子视图来绘制文本。设置和显示ScrollView的方式与UIView完全相同 - 即您设置框架并将其添加到另一个视图中,并且要显示文本,您需要向UIScrollView添加子视图以实际呈现文本。
为了设置基本的UIScrollView,您应该像正常的全屏视图一样创建它 - 将框架设置为与窗口大小相同,并将ScrollView添加到窗口作为子视图。然后创建一个大的UITextView来容纳您的文本。UITextView可以任意大 - 具体而言,它可以比屏幕更大。将UIScrollView的contentSize属性设置为UITextView的框架大小,然后将UITextView作为UIScrollView的子视图添加。
一旦您完成了这个工作,就可以使用contentOffset属性自动移动内容,控制缩放并设置委托以观察滚动事件。
* 更准确地说,它是在其上滑动的框架,但我假设您正在创建一个全屏UIScrollView。如果您想要一个较小的视图,我相信您可以推广它。
您可以使用UITextView。它是UIScrollView的子类,如果您将其文本属性设置为超出其框架的文本量,则视图将成为可滚动。
NSString *path = [[NSBundle mainBundle] pathForResource:@"instructions" ofType:@"html"];
NSFileHandle *readHandle = [NSFileHandle fileHandleForReadingAtPath:path];
NSString *htmlString = [[NSString alloc] initWithData: [readHandle readDataToEndOfFile] encoding:NSUTF8StringEncoding];
[self.instructionsView loadHTMLString:htmlString baseURL:nil];
您可以参考这个网站http://www.edumobile.org/iphone/iphone-programming-tutorials/scrollview-example-in-iphone/。
按照步骤制作iPhone中的滚动视图...祝你好运:)