Скрыть / показать элементы пользовательского интерфейса в цикле - PullRequest
0 голосов
/ 22 февраля 2012

Это, вероятно, легко, но я хочу спрятать элементы интерфейса с разными именами в цикле:

int i = intFigures + 1;

while (i <= 16) {
   imagei.hidden = TRUE;
   i++
}

По сути, мне нужно отображать количество изображений от 1 до 16 в зависимости от записи.Если эта конкретная запись содержит только 12 изображений, я хочу скрыть UIImage 13–16. Как установить UIImage, который я пытаюсь скрыть, основываясь на увеличении цикла?

1 Ответ

0 голосов
/ 22 февраля 2012

Вы не можете просто добавить переменную i к имени переменной изображения.Вероятно, у вас уже есть ваши ImageViews в массиве, почему бы просто не выполнить итерацию по этому.

for(UIImageView *image in myArrayOfImageViews) {
    image.hidden = YES;
}

В качестве альтернативы, если ваши imageViews добавляются непосредственно в ваш текущий вид, вы можете просто выполнить итерации по его подпредставлениям.Когда вы добавляете изображения, вы можете присвоить определенным тегам imageViews определенный тег, чтобы позже их можно было идентифицировать.Такие как:

for(UIView *view in [self.view subviews]) {
    if (view.tag == SOME_MAGIC_NUMBER) view.hidden = YES;
}
...