2012-02-09 30 views
0

私はそれを回転しようとすると面白い演技のUILabelに問題があります。私はプログラムで、コード内にラベルを作成して私の視点の中心にあり、現在はその値を設定するのが難しいです。私がしようとしているのは、テキストを回転させて画面の左側にセットして、左の枠線に合わせることです。私がtextLabel.transform = CGAffineTransformMakeRotation(M_PI_2);を行うと、テキストは正しく回転されますが、上下が逆です。しかし、私がtextY.transform = CGAffineTransformMakeRotation(M_PI_4);を実行すると、テキストは回転して、境界線と同じになるのではなく、角度で表示されます。私は以下の完全なコードスニペットを貼り付け、助言を感謝します。iOS UILabel回転の問題

CGRect labelFrame = CGRectMake(0, self.view.frame.size.height/2, 40, 40); 
UILabel *text = [[UILabel alloc] initWithFrame:labelFrame]; 
text.transform = CGAffineTransformMakeRotation(M_PI_2); 
text.backgroundColor = [UIColor clearColor]; 
text.text = @"Home"; 
[self.view addSubview:text]; 
[self.view bringSubviewToFront:text]; 
+0

あなたはテキストから読みたい、逆さま言いました下から上、または上から下へ? (私はテキストを上下に回転させたいと思う) – nycynik

答えて

3

テキストあなたはこのようにそれを行うことができます

E 
M 
O 
H 

を下から上に読みたい場合:

text.transform = CGAffineTransformMakeRotation(M_PI_2*3); 
+0

これはまさに私が探していたものです。私はこれで3つの乗算はなぜですか? M_PI_4を次の論理的なステップと見なすのはなぜでしょうか? – Seb

+0

M_PI_4は円/ 4、M_PI_2は円/ 2です。 cirlce全体の周りは2PIなので、M_PI_2の1ステップは1/4、M_PI_2の3ステップは3/4です。 – nycynik

+0

各キャラクター( 'H'、 'O'、 'M'、 'E')は回転していますか? – hzxu