iPhone Tableview - для начинающих - PullRequest
       10

iPhone Tableview - для начинающих

0 голосов
/ 12 сентября 2011

У меня есть вид с button и label на нем. Теперь, когда я нажму на эту кнопку, я попаду на другую страницу (просмотр), которая отображает Tableview с некоторыми значениями, заполненными на ней.

Я успешно закодировал button и label представление, а также заполненную часть tableview.

Теперь, когда мне нужно щелкнуть элемент или строку в tableview, это значение должно быть показано на предыдущей странице (которая содержит button и label). Как мне это сделать? Есть идеи?

Примечание: я не могу предоставить какой-либо код, потому что я нахожусь на моей машине Linux :(

Ответы [ 2 ]

1 голос
/ 12 сентября 2011

Возможно, лучшим решением является кодирование протокола.

В myProtocol.h

@protocol myProtocol

-(void) didSelectItem: (id) yourItem;

@end

Затем в файле интерфейса viewController, который содержит ваш tableView:

@interface MyViewController : UIViewController {
    id <myProtocol> selectionDelegate;
}

@property (nonatomic, assign)  id <myProtocol> selectionDelegate;

В .m файле:

 @synthesize selectionDelegate;



- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{
    //do something with your data and pass it to the delegate.
    [self.selectionDelegate didSelectItem:myObject];
[self.navigationController popViewControllerAnimated:YES];

}

viewController, содержащий кнопку и метку, должен реализовывать ваш делегат:

In .h:

@interface OtherViewController : UIViewController <myProtocol>  {


...

}

В .м:

-(void) didSelectItem: (id) yourItem
{
    //do something with your item, set the label and everything...

}

В какой-то части вашего кода вам нужно будет установить делегата

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

0 голосов
/ 12 сентября 2011

Если вы просто пытаетесь вернуться к своему предыдущему виду, если вы использовали UINavigationController для нажатия на контроллер табличного представления, тогда должна быть кнопка возврата, чтобы вернуть вас.Если вам нужно реагировать на нажатие определенной ячейки, переопределите метод tableView:didSelectRowAtIndexPath:.

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