2009-12-30 1 views
8

Скажем, у меня есть 4 UIViews, сделанные в IB, все со свойством тега = 2Какой UIView возвращается при использовании -viewWithTag: когда несколько просмотров имеют одинаковый .tag?

Когда я получаю представление с:

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

Что является критерием для получения, что UIView поскольку некоторые из них имеют тот же .tag значение?

Это:

  • случайных
  • первый созданный
  • вид с самым низким индексом в это SuperView
  • что-то другое

ответ

10

Его странное, но добавленное первое представление будет возвращено, если вы попытаетесь получить представление среди представлений с одним и тем же тегом. Вы также можете проверить это.

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

Надеюсь, это поможет.

-5

, если я должен был догадаться, Я бы предположил, что это будет почти случайным. как и в, вы, вероятно, получите некоторую согласованность, но каждый раз это будет совсем другое (хех).

Я бы сказал, что для них используются разные теги?

+2

, что нет никакого ответа на вопрос, ответы не должны состоять из догадок – thgc

1

Если вы используете Interface Builder, это зависит от того, какой заказ вы используете. В моем случае результатом будет UIActivityIndicator, а не UIWebView или UIButton с тем же тегом.

IB Layout