【问题标题】:Tagging in ios developmentios开发中的标记
【发布时间】:2013-09-30 11:45:07
【问题描述】:

我现在是 iOS 开发的绝对新手,所以如果这个问题看起来很简单,请原谅我。

我想构建一个项目 - 几乎就像一个笔记应用程序 - 用户将能够在其中将标签与他们的输入相关联。我敢肯定,很多人以前都见过它们——它被用于主题标签之类的东西,或者举一个 iOS 应用程序的例子——像 DayOne 这样的日记应用程序都有它。它主要用于生成标签,以便于检索特定文章。

我的问题是 - 您如何创建这些类型的标签?特别是——如何实现可以为应用中的文章生成自定义标签的标签系统?

它是 Cocoa/SDK 中内置的东西,还是我必须查看像 Core Data (NSPredicates) 这样更复杂的东西才能学习如何创建类似的东西?

还是必须以编程方式完成而不是 SDK 中的内置系统?

谢谢。

【问题讨论】:

  • Cocoa 或 Cocoa Touch 也没有内置这样的东西,所以你必须使用 Core Data。但在您这样做之前,我强烈建议您学习基本的 iOS 开发并从更简单的东西开始,因为 Core Data 有点高级,对于新手来说可能会很痛苦。
  • 您是在询问自动标记/从用户那里获取标记/针对数据/标记查找保存标记?
  • @Wain 差不多。假设我有一个笔记 - 并想用单词“class”标记它 - 然后用户将它输入到笔记中,以便以后可以在该标签关键字下搜索它
  • @Rickye 我已经做了一些 iOS 开发,但不是很多,是的,在进入 Core Data 之前需要一段时间,但我基本上需要它作为我将要做的起点到今年年底结束。感谢您的意见
  • @shineon88 如果你想从 Core Data 开始,我推荐斯坦福的 iOS 开发课程,它有一些很好的例子,并且很好地解释了这一切是如何工作的。但不仅仅是关于核心数据,如果你观看整个课程并做例子,它可以带你到一个新的水平。这可能需要一段时间,有时您可能会遇到困难,但值得付出努力。

标签: ios objective-c core-data tags tagging


【解决方案1】:

以超级简单的形式(即,您可以通过多种方式在此基础上进行构建以使其可扩展):

  1. 如果每个注释都是文本,则创建一个具有文本和标签属性的对象
  2. 将 tags 属性设为字符串数组
  3. 最初将笔记存储在数组中(存档以保存到磁盘,或仅使用未保存的版本练习)
  4. 让用户输入标签(自动标签是一个有趣的话题...)
  5. 考虑使用token field(Google 用于第三方实施)进行标记输入

现在,当用户开始搜索标记内容时,遍历您拥有的每个注释并在标记数组上运行谓词。这可以使用NSPredicate 来完成,或者您可以确保所有标签都以小写形式保存,并且首先需要完全匹配 - 所以您可以使用 '[tagArray containsObject:userEnteredTag];`

然后:

  1. 查看真正的谓词
  2. 看看 Core Data(或者 SQLite,如果你喜欢的话)

【讨论】:

  • 很好的建议 - 我真的很感激!
  • 没问题。作为一项规则,您应该对有用的答案进行投票,并标记解决您问题的答案(而不仅仅是评论;-))
  • 附注您可能想从google.co.uk/search?q=automatic+tagging+of+documents 之类的搜索开始
【解决方案2】:

您将需要使用 Core Data 或 SQLite3。我个人会使用 SQLite,但这取决于偏好。我都使用过,但如果你有任何 SQL 知识,那么我不会使用 Core Data。在使用 CoreData 创建了一个应用程序并使用了大量 NSPredicates 之后,我发现该应用程序有很多随着时间的推移出现的错误。 我将其更改为使用 SQLite,现在它运行完美。

由于您是 iOS 新手,我建议您看看 Ray Wenderlich 的教程。我从那里学到了很多东西。

http://www.raywenderlich.com/913/sqlite-tutorial-for-ios-making-our-app

【讨论】:

  • 这实际上并没有描述任何关于标签或标签管理建议的内容,它只是对是否使用 Core Data 的评论,没有真正解释为什么......
  • 感谢您的意见。我想使用核心数据,因为它将通过 iCloud 同步。我听说这方面更好,但是作为新手,我可能完全错了。
  • 这才是真正的韦恩。然而,它让我朝着正确的方向前进——你如何为 iOS 程序生成这样的标签?
  • 你可以在没有 Core Data 的情况下使用 iCloud。自动标记不一定容易(并且与 iOS 无关),您需要研究该主题...
  • 如果您想使用 Core Data,我使用了本教程,它让我在 Core Data 和标记方面有了一个良好的开端。因此,我希望它对您有所帮助。 raywenderlich.com/14742/… 我同意@Wain 的观点,因为您可能想对标记主题进行进一步研究
猜你喜欢
  • 1970-01-01
  • 2018-01-29
  • 2011-04-23
  • 1970-01-01
  • 2016-05-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多