При хранении объекта в NSMutableArray у меня возникают проблемы с обновлением свойств объекта, таких как цвет фона или «скрытое» свойство UIView.Objective C Обновление объектов в массиве
NSMutableArray *myArray;
UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(10, 10, 100, 100)];
myView.backgroundColor = [UIColor blueColor];
[self.view addSubview:myView];
myArray[0] = myView;
//myArray[0].backgroundColor = [UIColor redColor];
((UIView *)myArray[0]).backgroundColor = [UIColor redColor];
Моя первая попытка закомментирована, он не компилируется, потому что туАггау [0] возвращает тип «идентификатор», так что компилятор не распознает свойство BackgroundColor.
Для моей второй попытки я передал ее в UIView, поэтому он распознает свойство backgroundColor, но код не работает (фон все еще синий).
Является ли листинг в UIView, создавая копию моего представления и, следовательно, не обновляя вид, который я намеревался обновить? Как я могу заставить это работать, используя массив UIViews?
Инициализация массива решила мою проблему. Я думаю, что забыть инициализировать объекты является распространенной ошибкой для меня и других новых программистов с объективом c, возможно, потому, что я привык к компилятору, поймав его для меня на Java. Благодарим вас за четкий ответ. – trudawg0830