我有一张桌子,我希望在左侧加载动态图像。该表需要使用IF语句从“Resources”文件夹中选择适当的图像,并且需要基于[dog types]。
[狗类型]是从RSS提要中提取的,因此表格单元格中的图像需要匹配每个单元格的[狗类型]标记。
更新:请参阅下面的代码,了解我要做的事情(仅在地震下面,对我来说是狗的照片)。
我怀疑我需要使用 - (UIImage *)imageForTypes:(NSString *)类型{做这样的事情。
感谢。
更新代码:这是针对Apple的地震样本,但确实完成了我需要做的事情。它将图像与每次地震的严重程度(2.0,3.0,4.0,5.0等)进行匹配。
- (UIImage *)imageForMagnitude:(CGFloat)magnitude {
if (magnitude >= 5.0) {
return [UIImage imageNamed:@"5.0.png"];
}
if (magnitude >= 4.0) {
return [UIImage imageNamed:@"4.0.png"];
}
if (magnitude >= 3.0) {
return [UIImage imageNamed:@"3.0.png"];
}
if (magnitude >= 2.0) {
return [UIImage imageNamed:@"2.0.png"];
}
return nil;
}
和 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
magnitudeImage.image = [self imageForMagnitude:earthquake.magnitude];
答案 0 :(得分:1)
图像设置在
中- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
为简洁起见,您可能还想拥有该方法,但您只需像设置静态图像一样设置图像。
编辑:也就是说;在那个特定的方法:
cell.imageView.image = [UIImage imageNamed:@"Dachshund"]; // Dachshund.jpg exists in the resources directory, of course.
重新编辑:更加精确:
// Assuming that a) [dog types] is "<name of dog type>" and;
// b) an image named "<name of dog type>.file_extension" exists in the resources of the project:
cell.image = [UIImage imageNamed:[[dog types] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]];
// No mapping of the string to image name is necessary if you know the
// set of strings that will be used for the feed.
答案 1 :(得分:0)
您的问题是如何让它出现在表格单元格中或如何从资源文件夹中读取它?
使其出现在单元格中: cell.imageView.image = imageOfDogLoadedFromResourceFolder;
如果问题是如何从资源文件夹加载,则需要有关资源文件夹所在文件系统的确切位置以及图像文件格式的更多信息。
干杯。
答案 2 :(得分:0)
我从未使用过这个,但我认为您可以使用表格单元格的imageView
属性(UITableViewCell)来添加图片:
@property(nonatomic, readonly, retain) UIImageView *imageView
它是一个指向UIImageView的指针,它由单元格本身创建(分配)(这就是它的readonly)。通常,我们可以使用initWithImage方法将图像加载到像这样的UIImageView中:
UIImageView *myImgView = [[UIImageView alloc] initWithImage:
[UIImage imageWithContentsOfFile: @"image1.png"]];
所以在我们的代码中,我们这样做:
[[cell imageView] initWithImage:
[UIImage imageWithContentsOfFile: @"image1.png"]];
(未经测试的代码)
另见:UIImage