我有一个方法,我得到colorWithHex,这让我发送像ffaa29(十六进制)的字符串,并得到一个UIColor。该方法有效。如果我做了
self._mainConsole.textColor = [self colorWithHexString: choice];
我可以设置颜色。但问题是我想存储颜色。例如,如果他们输入无效颜色,我想要返回当前颜色。
当我这样做时,它不起作用。
self.foregroundColor =[self colorWithHexString: choice];
self._mainConsole.textColor = self.foregroundColor;
相反,它变成了黑色,这对我来说听起来像是000000.现在在我的测试ipad中,它在上面的一个位置工作但不是另一个。在测试人员ipad 1上,第二种方法根本不起作用。我错过了什么?可能会有内存问题吗?
麦克
答案 0 :(得分:0)
您正在使用弱属性来保持颜色。这意味着只要没有对您的颜色对象的其他强引用,它就会被nil
替换。将您的属性更改为strong
,一切都应按预期工作。