2012-03-10 9 views
-1

は私の2つの方法でのUIViewのフレームを変更しようと、コードは以下である:2つの方法はUIViewフレーム、任意の違いを変更しますか?

- 1 -

CGRect f = self.myView.frame; 
f.origin.x = 2.0; 
f.origin.y = 3.0; 
f.size.width = 10.0; 
f.size.width = 10.0; 
self.myView.frame = f; 

- 2 -

self.myView.frame = CGRectMake(2.0, 3.0, 10.0, 10.0); 

私はコードを実行しました古いiPod Touch 3。デバッグモードでは、違いはありません。リリースモードでは、最初のコードブロックが正しく機能しません。どうして?

ところで、私はオープンプロジェクト "MBProgressHUD"に同じ問題があることを発見しました。

+0

申し訳ありませんが、ここで最初のコードは、高さを設定されていません。しかし、私のプロジェクトのコードでは正しいです。 – ywss

答えて

0

最初のコードでCGRectの高さを設定していません。

0

最初の行は幅twicを設定します。それは高さを設定しません。

0

あなたは次の二つのモードでのUIViewのフレームを変更することができます。

CGRect f = myView.frame; 
f.origin.x = 2.0; 
f.origin.y = 3.0; 
f.size.width = 10.0; 
f.size.height = 10.0; 
myView.frame = f; 

または

[myView setFrame:CGRectMake(2.0, 3.0, 10.0, 10.0)]; 
関連する問題