如何在TextView控件中加粗,下划线,斜体显示文本的选定部分?

时间:2011-10-17 03:18:09

标签: cocoa

正如我在标题中提到的那样,我知道有相同的问题已经回答,但我需要用更简单的语言编写代码,我已经浏览了同一主题的所有问题,但所有这些问题都在高级水平中进行了解释。 这将是值得赞赏的。

2 个答案:

答案 0 :(得分:4)

这些是属性,您可以在the text view's text storage范围内设置这些属性,这是一种attributed string

粗体和斜体都是the font attribute的一部分,粗体和斜体都是font traits。您可以向字体管理员询问addremove字体上的任何特征,这将为您提供基于旧字体的新字体,然后您可以set as the new value of the font attribute

下划线要简单得多:它可以设置或取消设置an attribute all to itself

Font HandlingText System Overview中有更多信息。

答案 1 :(得分:0)

简短的回答是你不能。如果要显示富文本,那么最好使用UIWebView。这允许您应用HTML和CSS允许的任何类型的格式。如何执行此操作的示例是:

NSString *formattedText = @"<p>This is some formatted text <strong>Isnt that great </strong></p>";

UIViewView *myWebView = [[UIWebView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 320.0f, 480.0f)];
[myWebView loadHTMLString:formattedText baseURL:nil];
[self.view addSubview:myWebView];

我知道这不是你想要的,但我最终在我的应用程序'DevPHP'中使用了这个方法,它的效果非常好。因为我们正在将文本加载到webview而不是.html页面中,所以显示内容的webview中没有明显的延迟(这通常是使用webview时的主要抱怨)

最后一个用webview来讨厌它的是它丑陋的背景图像,你无法摆脱它。但是,在一天结束时,您仍然可以显示丰富的文本,大多数用户不会过多担心这个有弹性的webview。

希望有所帮助:)