Вопрос об элементах управления iPad / iPhone

#iphone #ipad #ios4 #xcode4

#iPhone #iPad #ios4 #xcode4

Вопрос:

На iPhone / iPad в общих настройках у них есть список itm, которые отображают ‘>’ с правой стороны. При нажатии он переходит к другому виду.

Это элемент управления из палитры объектов? Если да, то какой элемент управления? Если нет, то каков наилучший способ достижения аналогичной функциональности.

Я просмотрел множество примеров на сайте разработчиков Apple, но я не могу найти подобный элемент управления, или, по крайней мере, я не помню, чтобы видел его.

Приветствуется любая помощь по этому глупому вопросу !! -:)

Спасибо

Комментарии:

1. Вы имеете в виду кнопку, табличный вид или навигационный контроллер?

Ответ №1:

Каждый раз, когда вы видите представление, представляющее собой прокручиваемый список элементов, вы смотрите на UITableView, и каждый элемент в списке определяется с помощью UITableViewCell. Чтобы заставить UITableViewCell отображать ‘>’, вам просто нужно установить для его ‘accessoryType’ значение ‘UITableViewCellAccessoryTypeDisclosureIndicator’.

При этом отображается только символ ‘>’, он не скользит в другом представлении. Однако, когда пользователь выбирает UITableViewCell, он вызовет функцию для своего делегата:

 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
  

Здесь вы напишете логику, которая скользит в новом контроллере просмотра (используя UINavigationController — pushViewController:animated:).

Чтобы узнать больше о том, как использовать UITableView, я бы настоятельно рекомендовал ознакомиться с руководством по программированию UITableView. Это также ссылки на загружаемые проекты с примерами кода.

Ответ №2:

Вы, вероятно, имеете в виду комбинацию UITableViewController и UINavigationController. Создайте новое «приложение на основе навигации», чтобы проверить, как оно работает, и повеселиться. 🙂

Оба доступны в IB в разделе Контроллеры.

Комментарии:

1. Да, это все… UITableViewController. Спасибо за помощь!!

Ответ №3:

Элемент управления, который вы ищете, — это UITableView с индикаторами раскрытия. Чтобы получить индикаторы раскрытия (либо серые шевроны, либо синие кнопки), установите editingAccessoryType для каждой ячейки tableview. Это даст вам ‘>’ справа от каждого элемента в вашем tableview.

Когда вы нажимаете на один из ‘>’s, делегат tableview вызывает этот метод:

 - (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath
  

Этот метод отличается от метода, который вызывается, если вы нажимаете в любом другом месте строки:

 - (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath
  

Как сказал dominostars, вы создаете другой вид и используете метод pushViewController от UIViewController, чтобы справа появился другой вид.