iphone - 我的 UIColor 代码有什么问题?

标签 iphone objective-c ios global uicolor

我想制作一个全局的 UIColor 值。

我在 AppDelegate.m 中写

UIColor *fontcolor;

fontcolor = [UIColor colorWithRed:0.0 green:0.0 blue:1.0 alpha:1.0];

我在 MainViewController.m 中写

extern UIColor *fontcolor;

[cell.textLabel setTextColor: fontcolor];

但是我的应用程序在没有任何日志的情况下崩溃了。

最佳答案

首先,我想了解您为什么要尝试在您的 AppDelegate.m 中创建一个全局 UIColor,如果您可以解释更多关于您为什么要这样做的话这样做会很棒!

但是,与此同时,我在旅途中获得的实际 UIColor 代码存在问题。

我总是按如下方式构建我的 UIColor 变量。无论如何,当谈到 RGB 风格时。

[UIColor colorWithRed:0.0f/255.0f green:0.0f/255.0f blue:255.0f/255.0f alpha:1.0f];

我之所以这样做,是因为 RGB 格式在我看到的任何其他地方都是这样工作的。这是 255 中的一个数字。

现在,至于实际创建它的全局变量,我认为没有意义。如果只是设置 UILabel 颜色,那么全局设置是没有意义的。

每当您有一个 UILabel 想要更改其颜色时,我发现只需执行以下操作就非常简单。

[cell.textLabel setTextColor:[UIColor colorWithRed:0.0f/255.0f green:0.0f/255.0f blue:255.0f/255.0f alpha:1.0f]];

textLabelUITableViewCell 中的主要 UILabel

编辑

只需阅读一些评论。我看到您想要根据用户偏好更改颜色。只需使用 NSUserDefaults 即可实现。

最终结果会是这样的。

if(![[NSUserDefaults standardUserDefaults] boolForKey:@"blue"]) {        
   [cell.textLabel setTextColor:[UIColor colorWithRed:120.0f/255.0f green:0.0f/255.0f blue:180.0f/255.0f alpha:1.0f]];
} else {
   [cell.textLabel setTextColor:[UIColor colorWithRed:0.0f/255.0f green:0.0f/255.0f blue:255.0f/255.0f alpha:1.0f]];
}

关于iphone - 我的 UIColor 代码有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8181575/

相关文章:

ios - 使用 for in 循环遍历实现相同协议(protocol)的不同类的 NSArray

ios - 返回了无效的JSON:无法解析为[String:String],但可以作为NSArray使用

ios - 信号量在我的案例中没有按预期工作

ios - 将数据从 tableview 传回 Viewcontroller

ios - 如何声明返回基类的方法

objective-c - Objective C block 语法 - Xcode 自动完成功能不起作用

ios - 如何将就地编辑的内容传回之前的tableview controller(更新model)

iphone - IOS相当于Android的Paint.breakText()

ios - 如何检测用户何时从应用程序中截取屏幕截图?

ios - AVAssetExportSession 在输出视频的右侧和底部给我一个绿色边框