我查看过互联网并看到有类似问题的人,但不是完全相同的问题。
我正在制作一款iPhone游戏,其中包含每个字母的图像(A-Z)。在游戏开始时,我随机分配一个字母给12个不同的UIImageViews
。我这样做是通过创建一个包含所有文件名的Array,然后使用UIImageView
为每个rand()
分配一个随机的文件名。
当用户点击某个字母时,我会再次出现在正在构建答案字的其他区域。然后我将信件设置为NULL
,以便用户无法再次使用它来回答问题。
问题是,当他们得到答案时,我如何区分字母的图像?所以我可以构造一个字符串来将它与字典进行比较,看它是否是一个真实的单词。
我知道文件名丢失了,每张图片都是随机分配的。有没有更好的方法来解决这个问题。
答案 0 :(得分:1)
如果我理解正确,你想要一种简单的方法从UIImageView中找回这封信。
选项1(更好但代码更多):
继承UIUmageView
并创建一个名为LetterImageView
的类。将属性添加到名为letter
的此类,该类包含NSString
。构造此类时,还要设置字母属性。
使用改进后的UIImageView
,而不是使用原始LetterImageView
。现在,这将记住使用您的额外财产的哪个字母。
选项2(更快但是更黑):
任何视图都包含一个名为tag
的属性(这是NSInteger
)。您可以将标记设置为您想要的任何值。它应该可以帮助您标记视图,然后根据标记搜索它们。
如果您目前没有使用tag
属性,可以将信件保存在那里..有点难看但会起作用。只需为每个字母分配一个数字,例如1表示A,2表示B等。构建UIImageView
时,也要将字母保存在标签中。每当您想要发现特定图像视图中出现哪个字母时,只需检查标记。
答案 1 :(得分:0)
您可以使用UIView而不是UIImageView。 UIView有一个属性'tag'(NSInteger),您可以将其设置为稍后标识您的View(请参阅UIView tag)
我认为talkol对我来说有点太快了......