1

コントロールとコンテナーがあり、コンテナーの幅が最初に指定されます。その後、コンテナにコントロールを追加します。子コントロールを水平方向の中央に配置するようコンテナに指示する方法は? y値を自分で指定したい。

4

2 に答える 2

11

これを試して:

childControl.center = parentControl.center;

または、水平方向にのみ中央揃えする場合:

childControl.center = CGPointMake(childControl.center.x,parentControl.center.y);

計算するより簡単です。

編集: これは、スーパービューがparentControlビューと同じサイズである場合にのみ機能します。スーパービューと同じサイズではないビュー内でこれを行うには、次のようにします:

childControl.center = CGPointMake(childControl.center.x,
                                  parentControl.bounds.size.height/2);

上記の行はテストしていませんが、動作するはずです。通知されない場合は、自分でテストします。

于 2012-07-01T03:26:23.837 に答える
5

そのための計算は次のとおりです。

control.x = (container.width - control.width) / 2

これがあなたが探していたものでない場合は、私に知らせてください。

于 2012-07-01T03:21:47.273 に答える