У меня довольно простое приложение для iPhone, которое я хочу запустить как на iPhone, так и на iPad.Я хотел бы, чтобы версия для iPad была более крупной версией для iPhone, увеличенной или уменьшенной - я работаю над версией приложения для iPad, которая лучше использует интерфейс, но хотела бы сделатьуверен, что у моих существующих клиентов что-то есть.
Приложение представляет собой простое приложение на основе вкладок, а внутри каждой вкладки находится контроллер навигации, который представляет представление таблицы, каждый из которых может развернуть пару слоев,Все в основном работает - у меня есть несколько экземпляров представлений, которые не заполняют доступное пространство, но я могу это исправить.Моя самая большая проблема сейчас заключается в том, что навигационные контроллеры повсеместно ломаются, когда я пытаюсь их использовать.Как только я сверну один или два уровня ниже, я не смогу вернуться снова.
Позвольте мне попытаться объяснить более подробно:
Одна вкладка начинается с "таблица "год", показывающая все годы, в которых есть записи;если вы нажмете на год, будет отображено другое табличное представление со всеми месяцами в этом году, в которых есть записи;если вы нажмете на месяц, то появится другое табличное представление, в котором показаны отдельные записи;если вы нажимаете на запись, она выдвигает представление (UIWebView
, с некоторыми дополнительными виджетами), в котором отображаются детали записи.
Каждое нажатие выполняется с [self.navigationController pushViewController: foo animated: YES]
.Три упомянутых выше контроллера табличного представления созданы из одного и того же пера (фактически, все , помещенное в контроллер навигации в любой вкладке, загружается из одного и того же пера).Поскольку я знаю, что существует только три уровня навигации, я просто выделил три идентичных контроллера представления и использую один, два или три в зависимости от количества записей.
Отключение этих контроллеров с помощью «назад»Кнопка, кажется, повсеместно испортит состояние контроллера вида.Поэтому, если я перейду к третьему представлению, показывающему все за один месяц, я не смогу вернуться обратно к первому виду: кнопка «Назад» перестает работать, если я поднимаюсь на один уровень.
Еще один пример на другой вкладке: это одно табличное представление, на котором вы можете нажать любую запись, и будет выдвинут новый контроллер представления, который показывает детали этой записи.Если я коснусь записи, коснитесь кнопки «Назад», а затем коснитесь записи еще раз, кнопка «Назад» не появляется, или иногда появляется текст , который помещается внутрь кнопки «Назад», но нетпоявляется кнопка!
Такое поведение происходит, если я пытаюсь запустить приложение iPhone в масштабированном режиме (построено с использованием базового SDK 4.0, поддерживающего ОС 3.2) или в собственном режиме (построено с использованием базового SDK 3.2).На iPhone работает без проблем.Я немного растерялся, потому что этот материал всегда «просто работал» из коробки, в основном из настроек по умолчанию, которые были установлены еще при первом создании проекта.
Инстинкты моего программиста говорятмне, что я делаю что-то очень неправильное в навигации по моему мнению, и что iPad просто показывает это, но я не могу понять, что это такое.
Кто-нибудь сталкивался с такой проблемой, илипредложить что-то, что может быть, или какой-нибудь лучший способ отладить происходящее?