У меня есть контроллер панели вкладок, который затем переключается на навигационный контроллер (в раскадровке с flyoutnavcontollers тоже). Один из контроллеров представления отсюда запускает в контроллер viewview для MT.D вещи.
Я хотел получить красивую заостренную / конусообразную кнопку возврата из диалогового окна monotouch к моей точке вызова в навигационном контроллере.
Но запуск в MT.D приводит к потере навигации, даже если я по какой-то причине использую текущий контроллер навигации, то есть кнопка не отображается и нет возможности вернуться назад. Последующие экраны mt.d дают кнопку назад.
Очевидно, вы должны передать истинное логическое значение в вызов, чтобы активировать кнопку возврата, одновременно нажимая на существующий стек, но у меня это не сработало:
this.NavigationController.PushViewController (dv, true);
Приведенное выше решение Дэна не сработало для меня. Но вывод текущего контроллера диалогового окна в то время как в корневом окне MT.D помогает вернуться к моей предыдущей позиции в исходном контроллере nav в раскадровке (или контроллере flyoutnav).
Не уверен, что этот хак правильный, но работает.
dv.NavigationItem.RightBarButtonItem = new UIBarButtonItem("Back",UIBarButtonItemStyle.Bordered,delegate(object sender,EventArgs e)
{
NavigationController.PopViewControllerAnimated(true);
});
* обновление
Мне удалось получить кнопку возврата, добавив dialogviewcontroller к текущему подпредставлению viewcontrollers:
dvc = new MyDvcController(this.NavigationController);
this.View.AddSubview(dvc.TableView);
соответствующий MyDvcController в основном выглядит так:
public partial class MyDvcController : DialogViewController
{
public MyDvcController (UINavigationController nav): base (UITableViewStyle.Grouped, null)
{
navigation = nav;
Root = new RootElement ("Demos"){
new Section ("Element API"){
new StringElement ("iPhone Settings Sample", DemoElementApi),
}
};
}
}
это позволило monotouch.dialog быть частью текущего стека навигационных контроллеров и получить автоматическую кнопку возврата с конусообразным видом ..yay