0

指定したビューに UIActivityIndi​​cator を追加するクラスがあります。指定されたビューで UIActivityIndi​​cator を中央に配置したいと考えています。

UIActivityIndi​​cator が画面に長時間表示されていなかったので、これは正しく機能すると思いました。彼がアクティブなときに画面を回転させると、UIActivityIndi​​cator が中央に配置されていないことがわかりました。

私がやった方法は次のとおりです。

CGRect frame = CGRectMake((view.frame.size.width / 2 - self.activityIndicator.frame.size.width / 2),
                          (view.frame.size.height / 2 - self.activityIndicator.frame.size.height / 2),
                          self.activityIndicator.frame.size.width,
                          self.activityIndicator.frame.size.height
                         );

次に、より良い結果が得られます。

self.activityIndicator.center = view.center;

拘束を追加して、回転しても真ん中にとどまる方法はありますか? これは IB で実行できることはわかっていますが、コードではわかりませんか?

4

1 に答える 1

3

あなたのコードに加えて:

self.activityIndicator.autoresizingMask = (UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin);
于 2013-11-08T15:37:21.367 に答える