使用-viewWithTag时返回什么UIView:当多个视图具有相同的.tag?

时间:2009-12-30 06:30:05

标签: iphone uiview

假设我有4个UIViews,用IB制作,都带有标签属性= 2

当我得到一个视图:

 UIView *thisView = (UIView*)[self.view viewWithTag:2];

检索UIView的标准是什么,因为有几个具有相同的.tag值?

是吗:

  • 随意
  • 创建的第一个
  • 其超级视图中索引最低的视图
  • 别的东西

3 个答案:

答案 0 :(得分:11)

它很奇怪,但是如果您尝试在具有相同标记的视图中获取视图,则会返回首先添加的视图。你也可以这样检查它。

NSLog(@"%@",[[self.view viewWithTag:custTag] class]);

希望这有帮助。

答案 1 :(得分:1)

如果使用Interface Builder,则取决于您使用的顺序。在我的例子中,UIActivityIndi​​cator将是我的结果,而不是具有相同标签的UIWebView或UIButton。

IB Layout

答案 2 :(得分:-5)

如果我不得不猜测,我会认为它几乎是随机的。如你所知,你可能会得到一定程度的一致性,但每隔一段时间它就会变得完全不同(嘿)。

我会说为他们使用不同的标签?