2012-01-07 2 views
0

Я использую MGSplitViewController внутри UIViewController (я уже есть MGSplitViewController в RootViewController и я использую вторую внутри DetailViewController).IOS IPad - Нет связи между осваивается и DetailView mgsplitviewcontroller

Konrans solution работает отлично (я принял именно код, который он предоставил) - за исключением того, что мой MasterView не может ничего контролировать в DetailView. Есть что-то, чего я не вижу? Я сделал соединения в IB на основе соединений из примера MGSplitViewController.

Неужели кто-нибудь сталкивался с подобной проблемой?

+0

Мэтт, вы работаете на iOS 5? В настоящее время у меня проблемы с iPad, так как я перешел на Xcode 4.2 и iOS 5 (2 дня назад), потому что я обновил свой iPad 1 до iOS 5.0.1 и больше не могу использовать Xcode 3 с ним. Мои UIButton не отвечают в основном и подробно, в то время как тот же самый контроллер работает с контроллерами расщепления iPhone/out. – konran

+0

Можете ли вы предоставить более подробную информацию о том, что вы использовали IB? Он не работает с IB для MGSplitViewController. IB может поддерживать только главный и подробный контроллеры. – konran

+0

Да, я понял, что всего минуту назад, извините. Но даже без IB (мой splitviewController все еще получил один xib с представлением), это не сработает. Вот как я пытаюсь установить detailView изнутри masterView: {- (void) tableView: (UITableView *) tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath { detailView = [[ SettingsDetailView alloc] initWithStyle: UITableViewStyleGrouped]; detailViewController.view = detailView.view; [detailView release]; }} – gtrst

ответ

0

Вы должны отладить свой метод loadView в своем производном MGSplitViewController. Обычно здесь создаются как подробные, так и мастер-контроллеры.

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

У меня были такие проблемы в самом начале, когда я использовал MGSplitViewController.

Вы также включите эту проблему, если активируете предупреждение о сохранении памяти.

+0

Я попробую, спасибо! Считаете ли вы, что это может быть проблема, что создаются два экземпляра MGSplitViewControllers? Один как корень и один внутри детали из первого. – gtrst

+0

Возможно - по крайней мере, вещи xib усложнится, и вам придется адаптировать некоторый код с помощью самого MGSplitViewController ... те места, где UITabBarCtrl и UINavigationController рассматриваются как родительский элемент управления макетами. Мое приложение имеет 2 сплиттера, размещенных в 2 разных вкладках в UITabBarCtrl. Он работает, но не на 100% из-за проблем с макетом. Я еще не знаю, нужно ли мне переконфигурировать ;-( В любом случае, я точно не вхожу в вашу проблему. – konran

+0

Да, мне все еще интересно, нужно ли отключать некоторые ориентации, потому что они также вызывают некоторые проблемы. редизайн тоже в моей голове ... Я удалил каждый xib, кроме основного и подробного, - и нет проблем. Я узнал, что мой detailView выделен, но кажется, что он не сохраняется должным образом, так как в моем основном контроллере я пытаюсь получить доступ к моему detailView, а указатель читает 0x0 - теперь я удалил код моего SplitViewController, чтобы точно соответствовать вашим, и до сих пор нет доступа к деталям: -/ – gtrst

Смежные вопросы