これはnoob question.iのサブクラスです。インターフェイスビルダーのテーブルビューセルをサブクラス化し、テーブルビューを作成しました。テキストラベルの色をUITableViewCellStyleValue1の色青)。私は.nib file.imでセルを作成したので、cell.detailtextlabel.text.cを使用することができません。textlabelの色をUITableViewCellStyleValue1の色に変更する方法
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[NSBundle mainBundle] loadNibNamed:@"CCell" owner:self options:nil] objectAtIndex:0];
}
UILabel *lbl=(UILabel*)[cell viewWithTag:1];
UIImageView *imgV = (UIImageView*)[cell viewWithTag:2];
UILabel *label=(UILabel*)[cell viewWithTag:3];
NSDictionary *dToAccess = [self.listOfItems objectAtIndex:indexPath.row];
[lbl setText:[dToAccess valueForKey:@"title"]];
NSUInteger intVal = [[dToAccess valueForKey:@"rating"] integerValue];
switch (intVal) {
case 0:
[imgV setImage:[UIImage imageNamed:@"0star.png"]];
[label setText:@"Snitt 0"];
label.textColor=[UIColor blueColor];
break;
case 1:
[imgV setImage:[UIImage imageNamed:@"1star.png"]];
[label setText:@"Snitt 1"];
break;
case 2:
[imgV setImage:[UIImage imageNamed:@"2star.png"]];
[label setText:@"Snitt 2"];
break;
case 3:
[imgV setImage:[UIImage imageNamed:@"3star.png"]];
[label setText:@"Snitt 3"];
break;
case 4:
[imgV setImage:[UIImage imageNamed:@"4star.png"]];
[label setText:@"Snitt 4"];
break;
case 5:
[imgV setImage:[UIImage imageNamed:@"5star.png"]];
[label setText:@"Snitt 5"];
break;
default:
break;
}
CGSize size = [lbl.text sizeWithFont:[UIFont boldSystemFontOfSize:16] forWidth:205 lineBreakMode:UILineBreakModeCharacterWrap];
[lbl setFrame:CGRectMake(5, 0, size.width, 43)];
[imgV setFrame:CGRectMake(5+size.width+5, 4, 118, 36)];
return cell;
}
質問を明確にすることはできますか? 'label.text'の色を変更しようとしていますか? 'UITableViewCellStyleValue1'の色はどういう意味ですか? –
私は青色にlabel.textを設定しました。紺色です。色は薄い青色に変えてください(詳細は、テキストラベルにUITableViewCellStyleValue1を設定すると同様です)。 – stephensam