在表视图控制器中显示图像,其中图像从URL呈现为XML文件。它适用于将图像列为滚动视图。现在我想选择一个特定的图像,窗口应该单独显示所选的单元格图像。为此,我需要获得Cell值。如果是这样,我如何获得特定的单元格值并在下一个窗口中将其对应的图像显示为集合视图。
请建议我一个想法。为了更好地理解我在图片下方粘贴了我的故事板当前的外观以及我需要输出的方式。
希望你能理解我的问题。
答案 0 :(得分:23)
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// here we get the cell from the selected row.
UITableViewCell *selectedCell=[tableView cellForRowAtIndexPath:indexPath];
// perform required operation
UIImage * image =selectedCell.image;
// use the image in the next window using view controller instance of that view.
}
答案 1 :(得分:2)
您应该使用UITableViewDelegate
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
indexPath将返回所选行的节数和行数。
indexPath.section;
indexPath.row
我希望很清楚。为了进一步理解,您可以参考以下教程: http://www.edumobile.org/iphone/iphone-programming-tutorials/using-iphone-tableview-for-displaying-data/ http://www.raywenderlich.com/1797/how-to-create-a-simple-iphone-app-tutorial-part-1
答案 2 :(得分:1)
在这种情况下,我认为你应该维护行上每个图像的id。如果每行有一个图像,它可能是您的行号。然后从
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
您可以将id传递给下一个视图控制器。 在此视图控制器中,您应使用此id来获取创建集合视图所需的数据。 希望这会有所帮助。
答案 3 :(得分:0)
对我而言,这是有效的..
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
customerVC = [[UIStoryboard storyboardWithName:@"Main" bundle:nil]instantiateViewControllerWithIdentifier:@"customerInfoView"];
customerVC.selectedText = cell.textLabel.text;
//customerVC is destination viewController instance)
[self.navigationController pushViewController:customerVC animated:YES];
}
在目标视图中,控制器头文件只声明一个像
这样的字符串@property NSString *selectedText;
在viewcontroller.m中分配类似
的值self.selectedBiller.text = self.selectedText;
(selectedBiller是这里的标签)