Два способа изменить рамку UIView , какие-либо различия? - PullRequest
0 голосов
/ 10 марта 2012

Я попытался изменить фрейм 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" имеет ту же проблему.

Ответы [ 3 ]

0 голосов
/ 10 марта 2012

Первая строка устанавливает ширину твика. Он не устанавливает высоту.

0 голосов
/ 29 января 2014

Вы можете изменить кадр 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)];
0 голосов
/ 10 марта 2012

Вы не устанавливаете высоту CGRect в первом коде.

...