问题描述
|
我正在开发一个支持多种语言的iPhone应用程序。有很多数据,特别是图像。在应用程序的首次启动时,我为每个数据元素创建一个NSManagedobject。假设我有一个NSManagedobject,用于存储特定的图像(即图像路径名)和该图像的特定键。密钥同时是图像的名称(例如:我在巴黎有埃菲尔铁塔的图像,因此密钥为\“ eiffel Tower \”)。
除此之外,我想执行搜索。如果搜索“埃菲尔铁塔”,则应显示巴黎埃菲尔铁塔的图像。到现在为止,一切工作都非常完美。
就像您可能已经注意到的那样,图像键是英文的。如果我直接在图像键上进行搜索,将仅支持英语。我知道我无法在图像键上进行搜索。
我对NSLocalizedString很熟悉,但是这里有一个键,使用该键,您可以使用正确的语言来获取表达式。因此,我想到了一个\“ reverse NSLocalizedString \”函数,在该函数中有最终表达式,用法语(Tour eiffel)说,在该表达式的基础上,您可以获得原始图像键,以便可以显示正确的图像。是否存在这样的功能,或者我需要自己编写一些代码?如果您能说出正确的策略以及如何在自己的应用程序中进行操作,我将非常高兴。
解决方法
在我构建的应用程序中,我有一个带有可搜索字段和一个objectID的搜索实体。然后,我将每种语言的所有文本添加为该实体的实例。然后,我可以在那个\“ table \”中搜索。这样,我还可以向其中添加同义词或其他关键字。
将其视为一种搜索索引。