我嘗試了其他類似題目中的所有建議。我的情況似乎很特殊。這裏是我的代碼:UIImage在模擬器上顯示,而不是在真實設備上
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
if ([tableView respondsToSelector:@selector(setSeparatorInset:)]) {
[tableView setSeparatorInset:UIEdgeInsetsZero];
}
NSString *cellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
if ([menu_List count] == 0){
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
}
NSString *newString = [[MainMenuArray objectAtIndex:indexPath.row] stringByReplacingOccurrencesOfString:@" " withString:@""];
UIImage *image1 = [UIImage imageNamed:[NSString stringWithFormat:@"%@%@", newString,@".png"]];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image1];
[imageView setFrame:CGRectMake(5.0, 1.0, 41.0, 41.0)];
[imageView setContentMode:UIViewContentModeScaleAspectFill];
[cell addSubview:imageView];
cell.textLabel.textColor = [UIColor whiteColor];
GetData *GD = [[GetData alloc] init];
cell.backgroundColor = [GD colorWithHexString:@"18204a"];
cell.textLabel.text = [NSString stringWithFormat:@"%@", [MainMenuArray objectAtIndex:indexPath.row]];
}else{
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
}
cell.textLabel.text = [NSString stringWithFormat:@"%@", [menu_List objectAtIndex:indexPath.row]];
cell.textLabel.textColor = [UIColor whiteColor];
GetData *GD = [[GetData alloc] init];
cell.backgroundColor = [GD colorWithHexString:@"18204a"];
}
return cell;
}
所以字符串名稱是正確的,它匹配大小寫。我檢查了我的構建設置,並且圖像位於複製束資源中。全部在模擬器中顯示。七個中只有兩個出現在列表中。如果我改變它們出現的順序,它仍然是兩個相同的圖像。他們都出現在模擬器中。我正在使用ECSlidingViewController創建一個菜單,我希望圖像顯示出來。任何想法是什麼可能導致它?
刪除啓用圖片重新添加它....它爲我工作 – logixologist
清理您的項目,然後重新在設備上運行。如果您添加資源,則必須爲每個要添加的新設備執行清理/重建。愚蠢的,我知道。 – Putz1103
你確定你的圖片已添加到包中嗎? – ignotusverum