iPhone Drill down учебные предложения - PullRequest
0 голосов
/ 15 июня 2011

Кто-нибудь знает учебник или приложение с примером кода, который показывает, как можно включить детализацию таблицы, но не в самом начале приложения. Единственные учебники, которые я могу найти, демонстрируют это правильно, когда пользователь открывает приложение, но я хотел бы видеть его там, где пользователь переходит к таблице и затем углубляется в детали. Спасибо!

1 Ответ

3 голосов
/ 16 июня 2011

Ну, никаких руководств у меня в голове, но я считаю, что стандартный шаблон приложения на основе навигации создает проект, в котором табличное представление является корневым контроллером контроллера навигации, которое похоже на упомянутые вами учебные пособия, за исключением того, что без любые подпредставления для навигации. Чтобы изменить это так, чтобы приложение сначала загружало пустое представление, возможно, с помощью кнопки, которая затем переходит в представление таблицы, просто следуйте этим указаниям после запуска нового проекта с помощью шаблона приложения на основе навигации. Помните, что мои указания здесь максимально приближены к тому, что уже делается с помощью шаблона приложения на основе навигации, и максимально использует Interface Builder, а не кодирует представления вручную:

1) Зайдите в .m стандартного RootViewController, щелкните правой кнопкой мыши и измените его на что-то вроде "SimpleTableViewController"

2) Ну, угадайте, что ... Xcode4, вероятно, правильно переименовал файлы .m & .h и переименовал содержимое .xib, но не переименовал имя самого .xib, поэтому его все равно следует вызывать RootViewController.xib. Если это так, просто переименуйте файл RootViewController.xib вручную в SimpleTableViewController.xib.

2) Перейдите в Файл-> Новый файл-> Подкласс UIViewController и сохраните его как «новый» «RootViewController»

3) Откройте RootViewController.xib и перетащите круглую кнопку Rect из библиотеки объектов в разделе «Утилиты» справа.

4) Переименуйте круглую кнопку Rect в нечто вроде «Перейти к простому табличному виду»

6) Добавьте определение этого метода в RootViewController.h (непосредственно перед @end)

- (IBAction) goToSimpleTableView;

7) Добавьте тело метода в RootViewController.m (сразу после @implementation):

- (IBAction) goToSimpleTableView
{
    SimpleTableViewController* simpleTableViewController = [[SimpleTableViewController alloc] init];
    MyAppDelegate* appDelegate = [[UIApplication sharedApplication] delegate];
    [appDelegate.navigationController pushViewController:simpleTableViewController animated:YES];
    [simpleTableViewController release];
}

Также обязательно добавьте #import "MyAppDelegate.h" и #import "SimpleTableViewController.h" после первого оператора #import. (Здесь я предполагаю, что имя проекта MyApp создаст MyAppDelegate.h. Замените «MyApp» фактическим именем вашего делегата приложения).

8) Затем перейдите в MainWindow.xib, щелкните объект SimpleTableViewController под контроллером навигации, откройте инспектор идентификации справа и измените его класс на RootViewController.

9) Теперь, когда вы запустите приложение, вы увидите новый RootViewController с кнопкой, которую вы добавили в качестве первого вида.

10) Затем убедитесь, что привязали событие отправки «Touch Up Inside» кнопки в RootViewController к методу -goToSimpleTableView, щелкнув правой кнопкой мыши кнопку, щелкнув и перетащив ее из внутреннего узла в всплывающем меню. владельцу файла и затем выберите метод -goToSimpleTableView.

11) Запустите приложение еще раз, и теперь, когда вы нажимаете кнопку, оно должно перейти к представлению SimpleTableViewController. Вы заметите, что вы не увидите кнопку «Назад» или заголовок для просмотра. Это потому, что каждый из них нуждается в настройке своих элементов навигации. Перейдите в MainWindow.xib и нажмите NavigationItem внутри RootViewController и установите его заголовок в нечто вроде «Root View».

12) Чтобы добавить заголовок в SimpleTableViewController, вам нужно перетащить другой объект контроллера представления в MainWindow.xib, который соответствует SimpleTableViewController, так же как объект RootViewController соответствует RootViewController.h. Перетащите элемент навигации и переименуйте заголовок, как на последнем шаге.

13) Это поможет вам понять, что вам нужно. Чтобы добавить дополнительные представления, к которым можно получить доступ из SimpleTableView, создайте их с тем же процессом, что и для добавленного нами RootViewController. Чтобы фактически добавить их в табличное представление, требуется немного больше понимания того, как работают табличные представления, и это немного сложнее, но, как вы упомянули, для этого есть множество учебных пособий.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...