iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了objective-c – 用于设置RGB颜色的宏比UIColor好吗?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我的头文件中有这个宏: #define UIColorFromRGB(rgbvalue) \ [UIColor colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 \ green:((float)((rgbValue & 0xFF00) >> 8))/255.0 \
我的头@L_675_0@中有这个宏:

#define UIColorFromRGB(rgbvalue) \
        [UIColor colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 \
                        green:((float)((rgbValue & 0xFF00) >> 8))/255.0 \
                         blue:((float)(rgbValue & 0xFF))/255.0 \
                        alpha:1.0]

我在我的.m@L_675_0@中使用此类似的东西:

cell.textColor = UIColorFromRGB(0x663333);

所以我想问一下每个人都这样更好还是@R_776_10675@用这种方法

cell.textColor = [UIColor colorWithRed:66/255.0
                                 green:33/255.0
                                  blue:33/255.0
                                 alpha:1.0];

一个更好的方法

解决方法

中间地带可能是您的最佳选择.您可以定义常规C或Objective-C函数来执行宏现在正在执行的操作:

// As a C function:
UIColor* UIColorFromRGB(NSInteger rgbvalue) {
    return [UIColor colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0
                           green:((float)((rgbValue & 0xFF00) >> 8))/255.0
                            blue:((float)(rgbValue & 0xFF))/255.0
                           alpha:1.0];
}

// As an Objective-C function:
- (UIColor *)UIColorFromRGB:(NSInteger)rgbValue {
return [UIColor colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0
                       green:((float)((rgbValue & 0xFF00) >> 8))/255.0
                        blue:((float)(rgbValue & 0xFF))/255.0
                       alpha:1.0];
}

但是,如果您决定坚持使用宏,则应将括号放在rgbValue的任何位置.如果我决定用你的调用

UIColorFromRGB(0xFF0000 + 0x00CC00 + 0x000099);

你可能会遇到麻烦.

最后一点代码当然是最具可读性的,但可能是最不便携的 – 你不能简单地在你的程序中的任何地方调用它.

总而言之,我建议将宏重构为一个函数并将其保留在该函数中.

大佬总结

以上是大佬教程为你收集整理的objective-c – 用于设置RGB颜色的宏比UIColor好吗?全部内容,希望文章能够帮你解决objective-c – 用于设置RGB颜色的宏比UIColor好吗?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。