我有一个textview
,我已将height
600设置为interfacebuilder
. 然后我粘贴了一篇大文章(可能有超过 5000 多个字符)。应用程序滚动并且可以正确看到每一位文本。
我遇到的问题是,我需要有一个标题(粗体并增加字体大小),然后文本的正文以较小的字体大小出现等。我该怎么做interface builder
?
如果无法使用IB
,那么我该如何以编程方式进行呢?
我有一个textview
,我已将height
600设置为interfacebuilder
. 然后我粘贴了一篇大文章(可能有超过 5000 多个字符)。应用程序滚动并且可以正确看到每一位文本。
我遇到的问题是,我需要有一个标题(粗体并增加字体大小),然后文本的正文以较小的字体大小出现等。我该怎么做interface builder
?
如果无法使用IB
,那么我该如何以编程方式进行呢?
a 中的文本UITextView
都具有相同的字体、样式和大小。您将需要一个UILabel
或其他一些文本小部件来以不同方式显示任何内容。你可以使用 aUIWebView
然后世界就是你的牡蛎。
此外,将您的文章文本放入文本文件,在运行时加载,然后将文本放入您的文本视图中,这将是更好的设计,如下所示:
NSString *path = [[NSBundle mainBundle] pathForResource:@"file" ofType:@"txt"];
NSError *error = nil;
NSString *text = [NSString stringWithContentsOfFile:path
endcoding:NSUTF8StringEncoding
error:&error];
if (text == nil) {
[self doSomethingUsefulWith:error];
} else {
myTextView.text = text;
}
您可以使用UIWebview以 html 代码形式阅读
- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL;
并对整个消息进行编码,然后将链接包装到
[webView.loadHTMLString:@"<h1>heading</h1><h2>test smaller</h2>" baseURL:nil];
这不能在 IB 中或以编程方式完成。UITextView
可能仅使用整个内容的属性显示文本。
属性文本最简单的解决方案是使用 a UIWebView
(以及由 adali 的答案起草)。
替代方案将使用多个UITextView
s 或UILabel
s。
满足您的需求的最复杂的方法是使用CoreText
. 查看本教程了解更多信息。