0

我只是通过在 xib 中创建的按钮的代码中设置一个插座来试验layer我的属性。UIButton

    NSLog(@"d button layer value%@",dButton.layer.backgroundColor);

但输出如下:

    d button layer value(null)

我的问题是:我们不能显示layer. UIButton我们都知道会为按钮设置一些默认值。

4

3 回答 3

0

呸!!我终于得到了答案。实际上我试图在 NSlog 语句中使用 %@ 显示结构值。dButton.layer.backgroundColor 是 Quartz 内部用来表示颜色的基本数据类型。

因此,显示它们的方法是创建自己的可以解析值的类。

例如,有 CGRect、CGPoint 等的类函数,例如用于显示 CGRect 我们使用此代码

     NSLog(@"d button layer value%@",NSStringFromCGRect(dButton.layer.bounds));

但是没有为 CGColorRef 定义任何函数。

好的,正如 jrturton 所说,为了显示上述值,我们可以使用

    NSLog(@"d button layer value%@",[UIColor colorWithCGColor:button.layer.backgroundColor)]

我希望每个人现在都明白了!!

于 2012-06-23T07:30:23.420 回答
0

根据以下文档CALayer

默认值为nil.

除非您明确更改它。

于 2012-06-21T14:33:23.307 回答
0

UIView的文档中,它说:

默认值为 nil,这会产生透明的背景颜色。

这段摘录描述了该view.backgroundColor属性,因此我假设该view.layer.backgroundColor属性是相同的。

希望这可以帮助!

于 2012-06-22T16:24:17.037 回答