27

例如,如果您正在为 iPhone 创建一个UIView应用程序来显示博客中的文章。

你会推荐什么 UI 组件来显示文章的正文?一个等于零还是一个没有滚动和固定大小UILabel的?numberOfLinesUITextView

为什么?

4

3 回答 3

41

更新:正如我在下面评论的那样,我同意这不是这些天最好的答案。早在 2013 年它就更准确了,但今天你应该对大文本字段使用文本视图。我不能删除它,因为它是公认的答案,但我同意(并投票支持)下面毗湿奴的答案。

这在一定程度上取决于您到底要做什么。

如果您需要显示没有编辑功能和选择功能的静态文本,您应该使用 aUILabel并在UIScrollView必要时将其放置在 a 中。

如果您需要选择或编辑,请使用UITextView.

于 2013-08-06T01:41:47.817 回答
23

很抱歉回复晚了,但这可能会对某人有所帮助。

根据 Apple 的 iOS 文本编程指南,UILabel 定义了一个标签,它显示一个静态文本字符串。UITextField 定义了一个文本字段,它显示单行可编辑文本。UITextView 定义了一个文本视图,它显示多行可编辑的文本。尽管这些类实际上可以支持任意数量的文本的显示,但标签和文本字段旨在用于相对少量的文本,通常是单行。另一方面,文本视图旨在显示大量文本。

更多信息请查看:iOS 文本编程指南

于 2015-07-07T10:42:09.343 回答
7

你会推荐什么 UI 组件来显示文章的正文?numberOfLines 等于零的 UILabel 还是没有滚动和固定大小的 UITextView?

让我们参考 Apple 的官方文档,了解在应用程序中使用文本内容的指南。

根据它,UIKit框架提供了三个主要类用于在应用程序的用户界面中显示文本内容UILabelUITextFieldUITextView.

下面的行暗示了针对特定用例的可能建议:

尽管这些类实际上可以支持显示任意数量的文本,但标签和文本字段旨在用于相对少量的文本,通常是单行。另一方面,文本视图旨在显示大量文本。

如果我们考虑显示文章的用例,可以公平地假设它将具有大量文本内容。因此,如果我们应用上述指导方针,UITextView似乎是完成这项工作的更好工具。

接下来,当用户阅读文章文本时,UITextView有可选择的文本。这意味着用户可以从文章中复制特定的行或让设备说出文本。

于 2017-04-21T16:18:02.537 回答