removeFromSuperView не работает в iPad2 с iOS5 - PullRequest
0 голосов
/ 21 декабря 2011

У меня есть небольшая сумасшедшая проблема с removeFromSuperView, так как она по крайней мере не работает с iPad2 с iOS 5. Я отображаю пользовательское предупреждение UIView до того, как моя таблица заполняется данными, и когда это будет сделано, я удаляю его изсупер вид.с любым другим устройством работает нормально, кроме iPad2 (iOS5).Я что-то упускаю?

Любая помощь приветствуется.

Спасибо.

.h

@private
    SaveUIDisplayViewController *wbsSummaryLoadView;

.m

// Displaying

wbsSummaryLoadView = [[SaveUIDisplayViewController alloc] initWithNibName:@"SaveUIDisplayViewController" bundle:nil];
[[wbsSummaryLoadView view] setFrame:[self view].bounds];
[wbsSummaryLoadView setupSavingViewWithTitle:NSLocalizedString(@"Loading...", @"")];
[[self view] addSubview:wbsSummaryLoadView.view];

// Removing 

[wbsSummaryLoadView.view removeFromSuperview];
[wbsSummaryLoadView release];
wbsSummaryLoadView = nil;

Ответы [ 2 ]

0 голосов
/ 21 декабря 2011

Вы храните два разных объекта.Когда вы создаете SaveUIDisplayViewController, вы объявляете новый экземпляр в этом методе.Когда вы удаляете его, вы используете (я полагаю) переменную-член.

SaveUIDisplayViewController *wbsSummaryLoadView = [[SaveUIDisplayViewController alloc] initWithNibName:@"SaveUIDisplayViewController" bundle:nil];

Это позволит скрыть любое объявление wbsSummaryLoadView, которое вы определили в заголовке объекта.

И когда вы придете, чтобы удалить его

[wbsSummaryLoadView.view removeFromSuperview];

Должен где-то объявить wbsSummaryLoadView так (вот где я догадываюсь, так как вы не опубликовали свой.h файл), если это объявлено в заголовке, то оно не будет таким же, как когда вы его создали (на самом деле это будет nil на данный момент)

0 голосов
/ 21 декабря 2011

Как только вы добавите представление, вы можете сразу же его освободить. (копия создается с помощью addSubview) Попробуйте:

[[self view] addSubview:wbsSummaryLoadView.view];
[wbsSummaryLoadView release];

и тогда вам не нужно заботиться, потому что, если вы освобождаете весь вид, вы освобождаете и этот добавленный вид.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...