У меня есть подкласс UIView, на котором я манипулирую большим количеством графики на основе касаний. Все вызовы [self setNeedsDisplay] кажутся нормальными.
Однако я использовал указатель переменной экземпляра на тот же экземпляр подкласса UIView, а затем попытался манипулировать им, а затем вызывать [UIViewSubClass setNeedsDisplay] из другого класса UIView, и DrawRect никогда не вызывается. Существуют ли ограничения на то, откуда вы можете вызывать setNeedsDisplay?
(Этот метод вызывается при нажатии кнопки на другом подклассе UIView. Метод вызывается, но не DrawRect)
-(IBAction)loadGrid2;
{
tempSoundArray = musicGridView1.soundArray;
[musicGridView1.soundArray setButtonArrayToNull];
[musicGridView1 setNeedsDisplay];
musicGridView1.soundArray = tempSoundArray;
NSLog(@"loadGrid2 was called");
}