我有个问题:
我想 1) 将任意数量的文本加载到视图中,并且当它显示时,文本必须是不可编辑的。仅当有大量文本时,视图才应显示滚动条。我还希望能够突出显示文本中的任何特定字母,方法是使字母加粗或着色。这是可能吗?
我有个问题:
我想 1) 将任意数量的文本加载到视图中,并且当它显示时,文本必须是不可编辑的。仅当有大量文本时,视图才应显示滚动条。我还希望能够突出显示文本中的任何特定字母,方法是使字母加粗或着色。这是可能吗?
当然,使用 UIWebView 并使用 HTML 进行突出显示。
要么,您可以使用 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 设计器来实现此目的。
如有任何疑问,请告诉我:)
如果你使用 UIWebView 它使用 html 代码,为了避免这个问题在 CATextLayer 中使用nsattributedstring