removeFromSuperView нормально работает на iPod, но вылетает на iPhone - PullRequest
0 голосов
/ 22 июля 2011

При переключении между различными видами в разрабатываемом приложении для iPhone я добавляю и удаляю подпредставления из более крупного представления. Я написал код, который работает на iPod 4, iPhone 3, iPad 1, iPad 2, а также на симуляторах. Тем не менее, я получаю ошибку неверного доступа на iPhone 4 с вызовом removeFromSuperView. Я знаю, что это, вероятно, потому, что я выпустил что-то слишком много, поэтому superview больше не существует, но как это работает на всех других устройствах?

1 Ответ

0 голосов
/ 17 января 2012

// Попробуйте сделать следующее:

if(subview.superview!=nil)
    [subview removeFromSuperview];

// --------------------------------------------------------------

// Если у вас есть больше видов, то проверьте видкак это -

for(UIView * subview in self.view) {

  if(subview == view1) {
    if(subview.superview!=nil)
       [subview removeFromSuperview];
    }
else if(subview == view2){
    if(subview.superview!=nil)
       [subview removeFromSuperview];
    }
   .
   .
   .
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...