4

NSProgressIndicator を 90 度回転させる必要があります。 ここに画像の説明を入力

次のコードを使用すると:

[self.progressIndicator1 setWantsLayer:NO];
[self.progressIndicator1 setFrameCenterRotation:90];
[self.progressIndicator1 setMinValue:0];
[self.progressIndicator1 setMaxValue:100];
[self.progressIndicator1 setDoubleValue:50];
[self.progressIndicator1 displayIfNeeded];

[self.progressIndicator2 setWantsLayer:NO];
[self.progressIndicator2 setFrameCenterRotation:90];
[self.progressIndicator2 displayIfNeeded];

不適切な結果が得られます: ここに画像の説明を入力

このコードは OS X Yosemite では問題なく動作しますが、OS X El Capitan では動作しません。

どうすれば修正できますか?

4

1 に答える 1

1

プログレス インジケーターがビューに含まれている場合、そのビューのwantLayerを許可できれば、コードは機能します。

self.view.wantsLayer = YES;
self.progressBar1.doubleValue = 60.0;
self.progressBar2.doubleValue = 60.0;

[self.progressBar1 setWantsLayer:NO];
[self.progressBar1 setFrameCenterRotation:90];

[self.progressBar2 setWantsLayer:NO];
[self.progressBar2 setFrameCenterRotation:90];
[self.progressBar2 displayIfNeeded];

これはEl Capitanでうまくいきました。

于 2015-10-28T14:33:19.383 に答える