0

ビューのラベルを90度回転させようとしています。次の2つの方法を試しましたが、ラベルが画面に表示されなくなりました。プロパティが正しくアタッチされていることをトリプルチェックしました。何かご意見は?

1つ試してください:

// rotating labels 90 degrees
self.labelCloseScroll.transform = CGAffineTransformMakeRotation (3.14/2);

2つ試してください:

CGAffineTransform rotate = CGAffineTransformMakeRotation(3.14/2);
rotate = CGAffineTransformScale(rotate, 1, 1);
[self.labelCloseScroll setTransform:rotate];
4

2 に答える 2

1

それが機能するかどうかは100%わかりませんが、なぜ使用しないのですかM_PI_2。あなたが想定しているのは単純な考えですValue of Pi3.14、正確な値は3.14159...

私はこのようにそれをしました、そしてそれはうまくいきました:

UILabel *lbl = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 50, 70)];
lbl.text = @"New";
lbl.backgroundColor = [UIColor clearColor];
lbl.textColor = [UIColor whiteColor];
lbl.highlightedTextColor = [UIColor blackColor];
lbl.font = [UIFont systemFontOfSize:12];
lbl.transform = CGAffineTransformMakeRotation(M_PI_2);
[self.view addSubview:lbl];

これらの質問からの回答を確認することもできます:

回転したUIlabelをレンダリングする方法

UILabelを中央で回転させる

お役に立てば幸いです。

于 2013-01-12T09:27:02.160 に答える
1

ビューの境界がテキストに対して小さすぎる可能性があります。iOSのラベルビューでテキストを完全に表示できない場合、テキストは表示されたままになるのではなく、単に消えます。おそらく、アプリがクリップされたテキストで出荷され、開発者に修正を強制することを防ぐのは、意図的なAppleのポリシーです;)

これが起こっていることのように非常に聞こえます。回転するとテキストが小さくなるとおっしゃいましたが、これは、ラベルビューで設定されたプロパティに合わせて縮小テキストがあることを示しています。これにより、制約ビューのサイズが小さくなるため、テキストが縮小されます。しかし、テキストは消える前にそれほど縮小するだけです。

ラベルビュー自体が十分に大きいと思われる場合は、ビュー階層まで、ラベルが含まれている各親ビューの境界も確認してください。

于 2013-01-12T13:02:23.103 に答える