9

UILabel を含む UIView を表示していますが、これらの行のコードに到達するとすぐに、このビューとラベルがぼやけます:

CATransform3D transform = CATransform3DIdentity;      
transform.m34 = (1.0/-500);
view.layer.transform = transform;

アプリ全体で CA3DRotations やその他のものを使用していますが、これは以前にはありませんでした。また、ビューのフレームとラベルを整数のみを使用して設定しました! したがって、それはハーフピクセルの問題などではありません。それがほとんどのぼやけた問題を引き起こすことはわかっていますが、私のものではありません!

シミュレーターではブレず、iPadでもブレず、iPhone3GSでもブレず。Retina ディスプレイの iPhone4 でのみぼやけます。3D 回転を行う前でも! 私が気が狂う前に、誰も手がかりを持っていますか?

4

4 に答える 4

26

了解しました。解決策を見つけました。レイヤーの重力や倍率などのレイヤープロパティを使用して100行の異なるコードを使用した後、次の2行で突然偶然見つけました。

self.layer.shouldRasterize = TRUE;
self.layer.rasterizationScale = [[UIScreen mainScreen] scale];

これが解決策です!将来のすべての人にとって、網膜ディスプレイでのあなたの見方はぼやけていますか?これを使って!

于 2012-03-21T13:44:42.490 に答える
3

contentsScaleレイヤーを一致させるように設定しました[UIScreen mainScreen]. scaleか?それを試してみてください。

于 2012-03-16T15:08:46.880 に答える
0

ビューが「ピクセル間」である可能性があります (たとえば、中心は [12.5, 10] です)。彼らの場所を四捨五入してみて、それが役立つかどうかを確認してください.

于 2012-03-20T16:23:14.887 に答える