ios - program - xcode download
دائرة الرقابة الداخلية سك واجهة منشئ رغب المنزلق إنتاج لون مختلف من إيكولور ويثرغب (3)
timeLabel.textColor = [UIColor colorWithRed:255/255.0f green:159.0/255.0f blue:0.0/255.0f alpha:1.0];
في واجهة الباني لقد غيرت لون إيليابيل إلى هذه الصورة، وجود الأحمر 255، الأخضر 159، الأزرق 0 والتعتيم في 100٪. الذي يعطي اللون البرتقالي.
أنا برمجيا تغيير لون إيليابيل من تغييره مرة أخرى إلى اللون الأصلي باستخدام هذا ...
timeLabel.textColor = [UIColor colorWithRed:255.0 green:159.0 blue:0.0 alpha:1.0];
وأنه يعطي هذا اللون ....
اعتقدت أنه ينبغي أن يكون هو نفسه، لا أحد يعرف ما أفعل الخطأ؟ الرجاء المساعدة، شكرا.
إديت: بعد عامين، هذا المنصب لا يزال الحصول على بعض الكرمة والتعليقات. ثابت إجابتي القديمة لأفضل واحد.
الطريقة الأكثر منطقية، ويمكن إعادة استخدامها لإضافة وظيفة التي يمكن أن تأخذ الإدخال بين 0 و 255 ل إيكولور، هو إنشاء فئة مخصصة. أسهل للقراءة، وأسهل للتصحيح، وأسهل بالنسبة للآخرين للمساهمة في، ويحافظ على المشروع نظيفة ومنظم لأنها تنمو خارج مجرد عرض فيوكونترولرز. لذلك، إضافة الملفات التالية، واستيرادها في m- الملفات الخاصة بك كلما كنت في حاجة إليها
UIColor + Extra.h
@interface UIColor (Extra)
+ (UIColor *)colorWithR:(uint)red G:(uint)green B:(uint)blue A:(uint) alpha
+ (UIColor *) randomColor;
+ (UIColor *) colorWithHex:(uint) hex;
@end
UIColor + Extra.m
#import "UIColor+Extra.h"
@implementation UIColor (Extra)
+ (UIColor *)colorWithR:(uint)red G:(uint)green B:(uint)blue A:(uint) alpha
{
return [UIColor colorWithRed:red/255.0f green:green/255.0f blue:blue/255.0f alpha:alpha/100.f];
}
+ (UIColor *) randomColor
{
CGFloat red = (CGFloat)random()/(CGFloat)RAND_MAX;
CGFloat blue = (CGFloat)random()/(CGFloat)RAND_MAX;
CGFloat green = (CGFloat)random()/(CGFloat)RAND_MAX;
return [UIColor colorWithRed:red green:green blue:blue alpha:1.0];
}
+ (UIColor *) colorWithHex:(uint) hex
{
int red, green, blue, alpha;
blue = hex & 0x000000FF;
green = ((hex & 0x0000FF00) >> 8);
red = ((hex & 0x00FF0000) >> 16);
alpha = ((hex & 0xFF000000) >> 24);
return [UIColor colorWithRed:red/255.0f green:green/255.0f blue:blue/255.0f alpha:alpha/255.f];
}
@end