UIPopoverController с UITableView
У меня есть UIPopoverController, который имеет UITableView, который заполнен. Я пытаюсь передать информацию из popovercontroller в суперпредставление. Табличное представление, помещаемое в popovercontroller, получает информацию с помощью метода didSelectRow, но информация не передается в textView, помещенный в superView.
Ниже приведен код, который я использую, чтобы попытаться поместить выбранного пользователя в текстовое представление, а под ним - код Superview, где я пытаюсь взять строку и поместить ее в фактическое поле при нажатии на индекс. Я знаю, что моя проблема в том, что я не говорю своему superView, что строка была затронута, и не отправляю эту информацию в поле, но я искал и не нашел хорошего объяснения, как это сделать.
Если у кого-то есть предложения, это было бы здорово!
Спасибо
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath
*)indexPath {
if (indexPath){
NSString *selectedUser = [(Tweet*)[Friend objectAtIndex:indexPath.row]
followingScreenName];
TwitterFollowersTimline *textBox = [[TwitterFollowersTimline alloc]
initWithNibName:@"TwitterFollowersTimeline" bundle:[NSBundle mainBundle]];
textBox.selectedFriend = selectedUser;
NSLog(@"%@", selectedUser);
[textBox release];
textBox = nil;
}
}
В моем SuperView
selectedFriend = [[NSString alloc] init];
creatTweetText.text = [NSString stringWithFormat:@"@%@", selectedFriend];
1 ответ
Чтобы передать информацию от View Controller поповера, вы захотите настроить делегата. Вот ссылка на документацию Apple, а также хороший пример руководства.
http://iosdevelopertips.com/objective-c/the-basics-of-protocols-and-delegates.html
По сути, когда вы создаете View Controller, который содержит методы для вашего табличного представления, вы захотите дать ему делегат. Затем, выбрав ячейку в представлении таблицы, вы сможете отправить вызов своему делегату с любой необходимой информацией.