CustomCell上のUIImageviewへの画像貼付け

たとえば、
カスタムcellに貼付けたUIImageviewにリソース画像を貼付けたいとしたとき、
で、3つ目まで画像を貼付けたいとしたとき、
if分でrowが0から2まで貼付ければいいが、
UITableViewではcellが使い回されるので、
前に貼付けた画像がそのまま残る可能性があります
(というか、ありまくりw)
なので、それ以外のときは、画像をクリアするってことも
コード上に記述しないといけなさそうです。

//1位から3位まで(row0-2まで)は特定の画像をのせる
if( indexPath.row<=2 ){
	NSString * imagename= [NSString stringWithFormat:@"no%d.png", (indexPath.row+1) ];
	UIImage *image = [UIImage imageNamed:imagename];
	cell.rankingbanner.image = image;
}
else {
//それ以外はクリアさせる
	cell.rankingbanner.image = [UIImage imageWithData: nil];
}


cell上に乗っているものは基本クリアが必須なんでしょうね
いつも値をいれっちゃってるから気がつかないってことかも

SDK4のハマったところ

UIButtonにいままでinitWithImageメソッドで画像をおいていたら、
これがSDK4ではなぜか、NGでした。
ので、普通にsetImageメソッドを使うようにしたらOKみたいです。

はじめは非公開ボタンを使っているのがいけないのかと思ったら
initWithImageだとは・・・

SDK3で動いた

	UIImage *image = [UIImage imageNamed:@"star_on.png"];
	starbutton = [[UIButton buttonWithType:100] initWithImage:image];
	starbutton.frame = CGRectMake(0, 0, 35, 25);
	[starbutton addTarget:self action:@selector(check_setting:) forControlEvents:UIControlEventTouchUpInside];
	[starbutton setTintColor:[UIColor orangeColor]];
	[vview addSubview:starbutton];


SDK4では・・・

	UIImage *image = [UIImage imageNamed:@"star_on.png"];
	starbutton = [UIButton buttonWithType:100];
	starbutton.frame = CGRectMake(0, 0, 35, 25);
	[starbutton setImage:image];
	[starbutton addTarget:self action:@selector(check_setting:) forControlEvents:UIControlEventTouchUpInside];
	[starbutton setTintColor:[UIColor orangeColor]];
	[vview addSubview:starbutton];