今天早上我花了很多时间搜索谷歌,但我无法得到我想要的东西。
我正在分段表格视图中创建一个自定义表格视图单元格,侧面有不同的图标。我的问题是我无法从阵列中读取这些图像。 我可以像下面这样做,但有人可以帮我从数组中做到这一点。
长期工作代码:
switch (indexPath.row) {
case 0:
imageView2.image = [UIImage imageNamed:@"ico-company.png"]; break;
case 1:
imageView2.image = [UIImage imageNamed:@"ico-value.png"];
case 2:
imageView2.image = [UIImage imageNamed:@"ico-date.png"]; break;
case 3:
imageView2.image = [UIImage imageNamed:@"ico-notes.png"];break;
default:
break;
}
而且我认为我可以让它看起来像:
不工作代码我想要的方式
arryImages = [[NSMutableArray alloc] init];
arryImages = [NSArray arrayWithObjects:
[UIImage imageNamed: @"ico-company.png"],
[UIImage imageNamed: @"ico-value.png"],
[UIImage imageNamed: @"ico-date.png"],
[UIImage imageNamed: @"ico-notes.png"], nil];
imageView2.image = [UIImage imageWithContentsOfFile:[arryImages objectAtIndex:[indexPath row]]];
这是我在尝试使用数组代码时遇到的错误:
2010-01-18 13:20:47.314 SQL[60921:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[UIImage length]: unrecognized selector sent to instance 0x39135c0'
此致
答案 0 :(得分:4)
你的最后一行应该是:
imageView2.image = [arryImages objectAtIndex:[indexPath row]];
(在您的代码中,您将图像对象传递给imageWithContentsOfFile,但该方法需要文件名,而不是图像对象)