- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *__strong)indexPath
{
TestViewController*detail = [self.storyboard instantiateViewControllerWithIdentifier:@"TestView"];
[self.navigationController pushViewController:detail animated: YES];
detail.outputLabel.text =[NSString stringWithFormat:[mutablearray1 objectAtIndex:indexPath.row]];
// detail.outputImage.image =[NSString stringWithFormat:[mutablearray2 objectAtIndex:indexPath.row]];
}
@end
使用上面的代码我在tableview单元格中显示文本到详细视图。
我还希望在详细视图中显示与每行对应的图像。问题在于我所知道的评论部分。
需要进行哪些修改?
取消注释时我收到错误:由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:' - [NSConcreteData getCharacters:range:]:发送到实例的无法识别的选择器
答案 0 :(得分:1)
<强>第一强>
我相信您应该将[NSString stringWithFormat:[mutablearray1 objectAtIndex:indexPath.row]];
移到Push命令之上。
<强>第二强> 我不明白你的问题标题和它的内容之间的关系。
BTW第三 你正在使用 -
[NSString stringWithFormat:[mutablearray1 objectAtIndex:indexPath.row]];
不合适。
当您想要操纵字符串时,您将使用[NSString stringWithFormat:]
-
NSString * str1 = @"hellow";
str1 = [NSString string with format:@"str1 %@",world];
当%@将被逗号后面的单词替换。 (还有更多内容,但我想给你一个基本想法)。
如果你只想传递一个单词,你应该简单地说(我假设你的数组包含字符串!):
detail.outputLabel.text =[[mutablearray1 objectAtIndex:indexPath.row];
希望有所帮助
答案 1 :(得分:0)
我认为outputImage
是一个UIImageView对象。
我似乎在设置NSString
对象而不是UIImage
对象。请检查。