0

以下代码片段使用 iPad 模拟器和 iphone 模拟器可以正常工作。但是,当我在 ipad 2 上运行 UIImage 时(使用 iphone 模式),UIImage 为零(在调试时检查)

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell=[tableView dequeueReusableCellWithIdentifier:@"flowerCell"];

    switch (indexPath.section) {
        case kRedSection:
            cell.textLabel.text=[self.redFlowers objectAtIndex:indexPath.row];
            break;

        case kBlueSection:
            cell.textLabel.text=[self.blueFlowers objectAtIndex:indexPath.row];
            break;

        default:
            cell.textLabel.text=nil;
    }

    NSString *img=[[NSString alloc] initWithFormat:@"%@%@", cell.textLabel.text, @".png"];

    UIImage *flowerImage=[UIImage imageNamed:img];

    cell.imageView.image=flowerImage;

    return cell;
}

这是从教程书中摘录的比利基本 iphone 示例,并且是第一次出现此问题。

4

2 回答 2

2

尝试完全匹配图像名称小写-大写

如果图像名称是“image.png”并且您将名称写在代码@“image.Png”中,这将在模拟器上正常工作,而在设备上不起作用

于 2012-10-03T14:43:24.677 回答
1

我假设如果它不是图像丢失的文件名大写。

模拟器可能通过缓存资源来掩盖问题。如果您从模拟器中删除应用程序,清理并再次运行,您可能会在模拟器上看到相同的问题。

检查您的目标构建设置并查看图像是否在您的资源中。

于 2012-11-27T04:21:00.263 回答