2010-03-28 44 views
65

Tôi muốn thay đổi màu văn bản UILabel nhưng tôi không thể thay đổi màu sắc, Đây là cách mã của tôi trông như thế nào.Không thể thay đổi màu chữ UILabel

UILabel *categoryTitle = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 46, 16)]; 
categoryTitle.text = @"abc"; 
categoryTitle.backgroundColor = [UIColor clearColor]; 
categoryTitle.font = [UIFont systemFontOfSize:12]; 
categoryTitle.textAlignment = UITextAlignmentCenter; 
categoryTitle.adjustsFontSizeToFitWidth = YES; 
categoryTitle.textColor = [UIColor colorWithRed:188 green:149 blue:88 alpha:1.0]; 
[self.view addSubview:categoryTitle]; 
[categoryTitle release]; 

Màu văn bản nhãn màu trắng, không phải màu tùy chỉnh của tôi.

Cảm ơn bạn đã trợ giúp.

+0

nếu bạn bị lẫn lộn về vấn đề này, như việc sử dụng thử nghiệm .. ** [UIColor greenColor], [UIColor yellowColor] ** và vân vân. – Fattie

Trả lời

169

thành phần RGB UIColor của được thu nhỏ giữa 0 và 1, chứ không phải lên đến 255.

Hãy thử

categoryTitle.textColor = [UIColor colorWithRed:(188/255.f) green:... blue:... alpha:1.0]; 

Trong Swift:

categoryTitle.textColor = UIColor(red: 188/255.0, green: ..., blue: ..., alpha: 1) 
+0

Cảm ơn bạn rất nhiều. – HelloWorld

+0

Hi @ KennyTM.Có thể tôi biết tại sao chúng tôi phải chia giá trị của chúng tôi với 255 –

+0

@EXC_BAD_ACCESS: Để chuyển đổi các giá trị từ 0 ... 255 (0xff) thành 0.0 ... 1.0 – kennytm

7

Có thể là cách tốt hơn là

UIColor *color = [UIColor greenColor]; 
[self.myLabel setTextColor:color]; 

Vì vậy, chúng tôi có văn bản màu

+3

OP đặc biệt muốn sử dụng ** màu tùy chỉnh **, không chỉ là màu được đặt trước, do đó, sử dụng giá trị đặt trước không phải là giải pháp khả thi. Câu trả lời được chấp nhận là câu trả lời đúng. – Greg

+0

OP không được sử dụng màu tùy chỉnh, quá khó :) – Fattie

+1

"** Quá khó **"? Chúa ơi ... (giữ châm biếm!) –

1

Có thể, chúng không được kết nối trong InterfaceBuilder.

Màu chữ (colorWithRed:(188/255) green:(149/255) blue:(88/255)) là đúng, có thể sai lầm trong các kết nối,

backgroundcolor được sử dụng cho màu nền của nhãn và Format được sử dụng cho Format tài sản.

2

Hãy thử thế này, nơi alpha là opacity và những người khác là Red, Green, Blue chanels-

self.statusTextLabel.textColor = [UIColor colorWithRed:(233/255.f) green:(138/255.f) blue:(36/255.f) alpha:1]; 
+0

Một số lời giải thích sẽ tốt đẹp! – gsamaras

Các vấn đề liên quan