Когда в таблице выбрана строка, как я могу сообщить подробное представление о том, какая строка была выбрана? - PullRequest
1 голос
/ 22 февраля 2011

В моем приложении я использую контроллер навигации, который использует табличное представление для организации данных.Теперь, когда пользователь выбирает строку, подробный вид помещается в стек.Этот подробный вид остается неизменным независимо от того, какая строка выбрана.Единственное отличие состоит в том, что в зависимости от того, какая строка была выбрана, в моем подробном представлении будут загружены данные, соответствующие выбранной строке, из сохраненного файла .plist.

Поэтому мне было интересно, как я могу сообщить своему подробному представлению о том, какая строкабыл выбран в моем представлении таблицы.

Ответы [ 3 ]

2 голосов
/ 22 февраля 2011

Разве вы не можете просто создать собственный метод init в контроллере вида? Например, я передаю выбранную дату в ViewController, используя следующее:

.. интерфейс

- (id)initWithNibNameandDate:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil  dateValue:(NSDate *) selectedDate;

... реализация

- (id)initWithNibNameandDate:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil  dateValue:(NSDate *) selectedDate {
    self.selDate = selectedDate;
    return [super initWithNibName:nibNameOrNil bundle:nil];
}

Не имеет значения, какой тип данных вы передаете.

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

1 голос
/ 22 февраля 2011

На самом деле это было так же просто, как добавить ивар NSUInteger в контроллер подробного представления, а затем просто установить его значение из метода делегата таблиц непосредственно перед тем, как я помещу представление в стек.Спасибо за ваши ответы, ребята.

1 голос
/ 22 февраля 2011

В вашем контроллере табличного представления, didSelectRowAtIndexPath: метод будет вызван, когда пользователь выбирает строку. Возвращаемое значение indexPath предоставляет номера разделов и строк выбранной строки. Исходя из этого, вы можете обработать рассматриваемый элемент (например, его номер в массиве, из которого вы их получили), и его можно передать контроллеру подробного представления.

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