2009-08-04 2 views
0

В моем приложении у меня есть tabBarController и в нем навигационный контроллер. Один из моих контроллеров зрения является TableViewController и под Панель навигации я добавил UIView как подвид с точки зрения, как это:UIView исчезает после того, как modalViewController удален из супервизора

rectangleInfo = [[UIView alloc] initWithFrame:CGRectMake(0,0,[[UIScreen mainScreen] applicationFrame].size.width,26)]; rectangleInfo.autoresizingMask = (UIViewAutoresizingFlexibleWidth); rectangleInfo.backgroundColor = [UIColor darkGrayColor]; [self.view addSubview: rectangleInfo]; 

, когда я нажимаю на ячейки в Tableview я вытолкнуть UIViewController как это:

[feedViewController setModalTransitionStyle:UIModalTransitionStyleCrossDissolve]; 

[[self navigationController] presentModalViewController: feedViewController animated: YES];

После того, как я пару раз появляюсь в модульном виде из таблицыViewNavigationController, исчезает прямоугольникInfo UIView.

я поп мой modalview как это:

[[UIApplication sharedApplication] setStatusBarHidden:NO animated:YES]; 
[self setModalTransitionStyle:UIModalTransitionStyleCrossDissolve]; 
[self dismissModalViewControllerAnimated:YES]; 

любая идея, почему это подтаблицы (rectangleInfo) из tableViewController после я пропадает удалить вид модального из надтаблицы?

заблаговременно.

ответ

0

я решил проблему правильно реализаций методов viewDidLoad и viewDidUnload для создания и освобождения своих подвидов.

1

Мне любопытно, что вы пытаетесь сделать с помощью вида rectangleInfo? По размеру, похоже, вы пытаетесь имитировать строку состояния. Зачем? Вы можете просто скрыть строку состояния, если хотите.

Еще одна вещь, которую вы можете попробовать - это визуально создать UIView в Interface Builder. На самом деле не добавляйте его в свой основной вид, но создавайте его как отдельный UIView в XIB с соответствующим размером и т. Д. Затем создайте для него выход в Xcode и подключите его. Затем добавьте его в качестве подвью в коде, когда загрузится ваш контроллер. Посмотрите, если это имеет значение. Это особенно странно, потому что вы говорите, что оно исчезает только после нескольких раз. Вы получаете ту же самую проблему, если нажать и попы немодального пути, например .:

[[self navigationController] pushViewController:feedViewController animated:YES]; 
[[self navigationController] popViewControllerAnimated:YES]; 
+0

Привет, Мэтт, с представлением rectangleInfo Я не пытаюсь имитировать строку состояния. на этой картинке лучше видно, что я пытаюсь сделать с этим видом http://img269.imageshack.us/img269/9001/picture1wim.png. Под навигационной панелью находится прямоугольник с идентификатором UILabel, отображающим текущую категорию. я попробую то, что вы предложили, и я вернусь с отзывами. спасибо –

+0

привет Мэтт, я попробовал то, что вы предложили. проблема по-прежнему появляется, а также потому, что у меня есть табуляция, на которой мой feedViewController не появляется над ним. если я попытаюсь скрыть это, пространство, которое было занято панелью вкладок, не может использоваться моим представлением .. –

+0

hmm Я снова проверил свое приложение, и я узнал, что мое подзапрос исчезает, потому что я получаю предупреждение о памяти. Os освобождает любые виды, которые не видны. Подлинный факт заключается в том, что он не перестраивает subview rectangleInfo, а остальные снова устанавливаются после предупреждения о памяти ... –