1

1 つのビューと 1 つのビュー コントローラーを持つ単純なテスト アプリがあり、これらはすべて標準のストーリーボードを介してインスタンス化されます。アプリを実行し、View Controller のブレークポイントで一時停止すると、ビューに次の値が設定されていることがわかります。

self.view.layer.position = (CGPoint) (x=160, y=294)
self.view.layer.frame = (CGRect) (origin=(x=0, y=20) size=(width=320, height=548))
self.view.layer.visibleRect = (CGRect) (origin=(x=0, y=0) size=(width=320, height=548))

フレームの初期原点値は理解していますが (値 20 がステータス バーのオフセットであると仮定)、レイヤーの位置の 160/294 値はどこから来ているのでしょうか? 私はこれに困惑しています。

4

1 に答える 1

3

これは、CALayer の位置プロパティがその に対して相対的であるためanchorPointです。デフォルトでは、anchorPoint は (0.5, 0.5) に設定されており、レイヤーの境界の中心を表します。

非常に基本的な配置変更をプログラムで実行しようとしている場合は、UIView には独自の配置プロパティがあるため、ビューのレイヤー プロパティには近づきません。

于 2013-05-02T16:06:31.587 に答える