0

xibで作成されたボタンのコードにアウトレットを設定することlayerで、私のプロパティを試していました。UIButton

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

しかし、出力は次のようになります。

    d button layer value(null)

私の質問は、 のlayerプロパティ値を表示できないかということですUIButton。ボタンに何らかのデフォルト値が設定されていることは誰もが知っています。

4

3 に答える 3

0

のドキュメントにCALayerよると:

デフォルトは ですnil

明示的に変更しない限り。

于 2012-06-21T14:33:23.307 に答える
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

UIViewのドキュメントでは、次のように述べています。

デフォルト値は nil で、背景色が透明になります。

この抜粋はプロパティを説明しているため、プロパティは同じview.backgroundColorであると想定しています。view.layer.backgroundColor

お役に立てれば!

于 2012-06-22T16:24:17.037 に答える