Im работает над сеткой 2x2, каждый из которых имеет UIView и дочернюю метку с текстом и цветом фона.Хранение UIView с детьми
Я генерировать UIView с для цикла, как это:
// Generatin answer cube buttons
for var i = 0; i < cubeCount; i++
{
// two answers case
if(cubeCount < 3)
{
var btn = button(xpos, y: ypos, width: screenWidth, height: (screenHeight * 2));
var lbl = labelis("\(i)", btn: btn)
btn.addSubview(lbl)
xpos = xpos + (screenWidth + 10);
self.view.addSubview(btn);
}
// 3+ answers case
else
{
var btn = button(xpos, y: ypos, width: screenWidth, height: screenHeight);
var lbl = labelis("\(i)", btn: btn)
btn.addSubview(lbl)
xpos = xpos + (screenWidth + 10)
self.view.addSubview(btn)
// change row in case of more than 2 answers
if(i == 1)
{
xpos = 20
ypos = ypos + (screenHeight + 10)
}
}
У меня также есть функция tapGesture давая мне знать, когда я нажимаю на одном из ответов куба.
Моя проблема заключается в том, что при нажатии на один из кубов я хотел бы получить доступ ко всем кубам и изменить цвет фона их ярлыков.
Я все же хотел бы сохранить UIView в массив, чтобы я мог действовать на них из функции tapGesture, но я не вижу, как я мог бы это сделать.
Я, хотя, может быть, кто-то может вести меня через способ справиться с этим. спасибо.
Да, но это только для нажатой кнопки? Я смотрю, как действовать на все созданные uiviews. – SKYnine
Это будет итерация по всем подземелям self.view, и если найденная кнопка типа будет вводить условие if. – Abdullah
он вызывает ошибку: reauire «in» sorry Im совершенно новый для быстрого ... невозможно создать UIView, добавить компоненты, сохранить его в массиве и затем использовать данные внутри этого массива? Это то, что я добавляю в виду. Сканирование для всех компонентов кажется немного интенсивным нет? – SKYnine