访问UIImageView文件名解决
我查看了互联网,看到有类似问题的人,但不是完全相同的问题。访问UIImageView文件名解决
我正在为每个字母(A-Z)的图像制作一款游戏。在比赛开始时,我随机分配了一封信给12个不同的UIImageViews
。我通过创建一个包含所有文件名的数组,然后为每个UIImageView
和rand()
分配一个随机数。
当用户点击一个字母时,我再次出现在正在构建答案字的不同区域。然后,我将该字母设置为NULL
,以便用户不能再次使用它作为答案。
问题是,当他们得到答案时,如何区分字母图像?所以我可以构造一个字符串来将它与字典进行比较,看它是否是一个真正的单词。
我知道文件名会丢失,并且每个图像都是随机分配的。有没有更好的方法来处理这个问题。
如果我理解正确,你需要一个简单的方法来从UIImageView中找回字母。
选项1(更好,但更多的代码):
从UIUmageView
继承和创建自己的类名称类似于LetterImageView
。添加一个属性,这个类叫letter
其中包含NSString
。当你构建这个类时,还要设置字母属性。
而不是使用原来的UIImageView
,使用您的改进LetterImageView
。这会记住哪个字母是使用您的额外属性。
选项2(更快,但hackish的):
任意视图包含一个称为tag
属性(这是一个NSInteger
)。您可以将标签设置为您想要的任何值。它应该可以帮助您标记视图,然后根据标记搜索它们。
如果您目前没有使用tag
属性,您可以将您的信保存在那里..有点难看但会起作用。简单地为每个字母分配一个数字,例如1代表A,2代表B等。当您构建您的UIImageView
时,也可将该字母保存在标签中。无论何时您想要发现哪个字母出现在特定的图像视图中,只需检查该标签即可。
感谢您的帮助,我对编程比较陌生。我喜欢选项一,但我不知道和UIImageView不知道它收到了哪个字母PNG。这一切都是随机完成的。对于这个选项,我必须制作26个LetterImageViews(每个字母一个),然后随机选择12放在屏幕上。 – aarj 2013-02-18 16:55:06
您可以使用UIView而不是UIImageView。的UIView有一个属性“标签”(NSInteger的),你可以设定以后,以确定您的视图(请参阅UIView tag)
我看到talkol是有点太快了,我...
imaveView也有相同的属性'标签'。 – rptwsthi 2013-02-18 16:19:29
为什么不干脆用一个额外的合成NSString扩展UIImageView,所以你可以保存存储在该UIImageView中的字母? – 2013-02-18 16:06:47
子类'UIImage'将会诀窍 – 2013-02-18 16:07:49