-4

我有个问题:

我想 1) 将任意数量的文本加载到视图中,并且当它显示时,文本必须是不可编辑的。仅当有大量文本时,视图才应显示滚动条。我还希望能够突出显示文本中的任何特定字母,方法是使字母加粗或着色这是可能吗?

4

3 回答 3

2

当然,使用 UIWebView 并使用 HTML 进行突出显示。

于 2012-12-06T12:31:59.110 回答
1

要么,您可以使用 UIWebView 或我在下面描述的机智:

只需在您的视图中添加 UITextView 并将其边框设置为 none 或任何您认为好的,并标记他的属性不可编辑和您认为的高度。所以,文本视图是不可编辑的,以及当文本长度足够时会发生什么到它的高度,它是自己的卷轴。

对于不可编辑,您可以通过编程方式或使用 IB 进行。在 IB 中,只需检查 XCode 右侧视图部分中的“行为”选项,而对于编程方法:

    UITextView* myRequiredTextView = [UITextView new];
    myRequiredTextView.editable = NO;//Don't forget to apply values to other properties like setFrame, etc.
 [self.myView addSubView:myRequiredTextView];

而且,为了突出显示的目的,您可以使用 NSAttributedString。

如果您选择 webView 选项,那么它需要 HTML,因此您需要一个 HTML 设计器来实现此目的。

如有任何疑问,请告诉我:)

于 2012-12-06T12:43:14.567 回答
1

如果你使用 UIWebView 它使用 html 代码,为了避免这个问题在 CATextLayer 中使用nsattributedstring

于 2012-12-06T12:43:18.580 回答