访问UIImageView文件名可以解决

时间:2013-02-18 16:02:54

标签: iphone objective-c ipad uiimageview

我查看过互联网并看到有类似问题的人,但不是完全相同的问题。

我正在制作一款iPhone游戏,其中包含每个字母的图像(A-Z)。在游戏开始时,我随机分配一个字母给12个不同的UIImageViews。我这样做是通过创建一个包含所有文件名的Array,然后使用UIImageView为每个rand()分配一个随机的文件名。

当用户点击某个字母时,我会再次出现在正在构建答案字的其他区域。然后我将信件设置为NULL,以便用户无法再次使用它来回答问题。

问题是,当他们得到答案时,我如何区分字母的图像?所以我可以构造一个字符串来将它与字典进行比较,看它是否是一个真实的单词。

我知道文件名丢失了,每张图片都是随机分配的。有没有更好的方法来解决这个问题。

2 个答案:

答案 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对我来说有点太快了......