2010-09-29 4 views
0

Я знаю, что некоторые из вас могут быть не знакомы с Monotouch, но это, безусловно, может быть общей проблемой iOS, а не конкретной проблемой Monotouch.UIToolbar исчезает после отклонения Modal View Controller

Я воссоздание приложения с аналогичной функциональностью для почтового приложения по умолчанию: UITableview with UIToolbar at bottom

Это простое воссоздание нашего приложения. Это UIView, который содержит UITableView и UIToolbar. Он загружается из файла XIB (который содержит сопроводительный код контроллера просмотра). Это представление является представлением UITabController (хотя я уверен, что это не должно влиять на вещи?).

alt text

Это был отодвинут от навигационного контроллера с помощью

controller.PushViewController(inboxItem.Controller, true); 

(где inboxItem обычая объект, который я сделал, свойство контроллера является вид контроллера в inboxItem в).

Нажатие правой кнопки на панели инструментов представляет собой новый вид модальности (создайте новое сообщение) - что делает его вещь и независимо от того, в каком направлении ее уволили, после увольнения UIToolbar исчезает. Однако, если я нажму на другую вкладку, затем вернитесь на эту вкладку, панель инструментов снова появится. Это проблема с перерисованием?

Я делаю что-то неправильно с тем, как я структурирую свое приложение? Или мне довелось споткнуться о какой-то причудливой ошибке iOS/Monotouch? (Я надеюсь, что это для первого - так что я могу улучшить развитие iOS).

+0

Есть ли особая причина, по которой вы вручную добавили панель инструментов, а не используя панель навигации navigationController? Также странно, что владельцем того, что кажется XIB viewcontroller является tableView, а не viewcontroller. – FelixLam

+0

Здесь я обнаружил отсутствие знаний о iOS. Я изменил код так, чтобы он использовал панель навигации navigationController, и я все еще получаю ту же проблему. Кроме того, «InboxTableView» - это имя viewController (предыдущий вид, из которого вызывается это представление). – Luke

ответ

0

Я решил проблему. В основном, то, что происходило, когда был представлен ModalView, а затем был уволен, toolbar перемещался на 44 пикселя каждый раз.

В моем примере панель инструментов размещена над UITabBar, поэтому, когда модальное представление было отклонено, панель инструментов была перемещена из поля зрения. Я не уверен, почему это происходит, но я обязательно отправлю соответствующие отчеты об ошибках.

Один быстрый и (очень) грязный путь вокруг этого - переместить toolBar на 44 пикселя при отображении модального обзора, чтобы при его увольнении он переместил его обратно в нужную позицию.