Đối với một giải pháp nhanh chóng (nhưng có lẽ không phải là người đẹp nhất):
- Thêm thuộc tính màu sắc như một số loại vào plist
- Nhập màu như một RGB-hexdecimal, ví dụ:
0xff00e3
- đọc nó ra và xử lý nó với một vĩ mô như dưới đây
dưới đây là một ví dụ mã:
// Add this code to some include, for reuse
#define UIColorFromRGBA(rgbValue, alphaValue) ([UIColor colorWithRed:((CGFloat)((rgbValue & 0xFF0000) >> 16))/255.0 \
green:((CGFloat)((rgbValue & 0xFF00) >> 8))/255.0 \
blue:((CGFloat)(rgbValue & 0xFF))/255.0 \
alpha:alphaValue])
// This goes into your controller/view
NSDictionary *myPropertiesDict = [NSDictionary dictionaryWithContentsOfFile:...];
UIColor *titleColor = UIColorFromRGBA([myPropertiesDict[@"titleColor"] integerValue], 1.0);
Sau khi nhập màu dưới dạng thập lục phân, trình chỉnh sửa plist sẽ hiển thị dưới dạng số thập phân. Không hay. Là một nhà phát triển, bạn thường sao chép dán các màu sắc từ một tài liệu thiết kế anyway, do đó, cần phải đọc các giá trị màu sắc không phải là lớn.
Chỉ cần lưu ý rằng, màu xanh lá cây, các giá trị màu xanh đỏ là 0.0-1.0 không 0-255 nên chia chúng bằng 255 để có được giá trị đúng - đây bắt gặp tôi trong một thời gian. – amergin
Điều này là để lưu trữ trong 'plist', bạn có thể muốn" thiết kế "các màu trong' plist'. Đối với người trợ giúp chuyển đổi RGB, hãy xem http://stackoverflow.com/questions/13224206/how-do-i-create-an-rgb-color-with-uicolor/21297254#21297254 và http://stackoverflow.com/questions/ 437113/how-to-get-rgb-giá trị-từ-uicolor/21296829 # 21296829. – Geri