iPhone开发问题帮助形成阵列

时间:2010-01-18 12:21:59

标签: iphone arrays image cell tableview

今天早上我花了很多时间搜索谷歌,但我无法得到我想要的东西。

我正在分段表格视图中创建一个自定义表格视图单元格,侧面有不同的图标。我的问题是我无法从阵列中读取这些图像。 我可以像下面这样做,但有人可以帮我从数组中做到这一点。

长期工作代码:

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'

此致

1 个答案:

答案 0 :(得分:4)

你的最后一行应该是:

imageView2.image = [arryImages objectAtIndex:[indexPath row]];

(在您的代码中,您将图像对象传递给imageWithContentsOfFile,但该方法需要文件名,而不是图像对象)