为什么我不能显示Uibutton的图层属性值

时间:2012-06-21 14:21:54

标签: iphone objective-c ios uibutton

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

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

但输出结果如下:

    d button layer value(null)

我的问题是:我们无法显示layer的{​​{1}}属性值。我们都知道会为按钮设置一些默认值。

3 个答案:

答案 0 :(得分:0)

根据documentation for CALayer

  

默认值为nil

除非您明确更改它。

答案 1 :(得分:0)

UIView的文档中,它说:

  

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

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

希望这有帮助!

答案 2 :(得分:0)

P !!我终于得到了答案。 实际上我试图在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)]

我希望每个人都能得到它!!