Here I addsubviews (UIImageViews) it all works on the simulator but not on the device (iOS 4.1) wtf!?
- (void)addChips:(int)value {
UIImage *chipImage;
switch (value) {
case 5:
chipImage = [UIImage imageNamed:@"5chip"];
break;
case 25:
chipImage = [UIImage imageNamed:@"25chip"];
break;
case 100:
chipImage = [UIImage imageNamed:@"100chip"];
开发者_StackOverflow社区 break;
case 500:
chipImage = [UIImage imageNamed:@"500chip"];
break;
default:
break;
}
int chipCount = [chipsOnBet count];
UIImageView *addChip = [[UIImageView alloc] initWithImage:chipImage];
addChip.opaque = YES;
addChip.frame = CGRectMake((kStackOffset * chipCount) + 131, 268, 57, 57);
[self.view addSubview:addChip];
[chipsOnBet addObject:addChip];
[addChip release];
}
- Make sure you write the correct file names, iOS is case sensitive, simulator is not.
- Make sure you have the proper retina files if you test on iPhone4
I found the answer in the documentation:
Case-sensitivity: iPhone OS uses a case-sensitive file system, unlike the Simulator which uses a case-insensitive file system by default. Make sure the case-sensitivity of resources accessed within code matches the filename case-sensitivity.
For example, if our filename is "YourExampleImage.png":
Good: [UIImage imageNamed:@"YourExampleImage.png"]
Bad: [UIImage imageNamed:@"YourExampleImage.PNG"]
Bad: [UIImage imageNamed:@"yourexampleimage.png"]
So I just have to ensure my image names are the same case as my resources. So in my case I should of put 5Chip instead of 5chip.
You are going to use your image, names only. Not with image extension. You should use the full image name as
[UIImage imageNamed:@"a.png"];
Make sure image name is the be same as you stored it in the resource folder.
精彩评论