Исправить положение пользовательского вида в UIView - PullRequest
0 голосов
/ 08 декабря 2011

У меня есть пользовательский вид с некоторым рисунком в drawRect, добавленным как подпредставление в UIView. При нажатии на подпредставление я изменяю высоту основного вида. Это делается с помощью -

CGRect rect = self.bounds;
rect.size.height = 400.0;
self.bounds = rect;

Это такжеперемещает пользовательское представление (устанавливает его в верхнюю часть базового представления), которое мне не нужно, подпредставление должно оставаться фиксированным в нижней части UIView.

Позиция Y для настраиваемого представления устанавливается навысота базового вида -

 y = self.bounds.size.height - 40.0;

Работает, когда пользовательский элемент управления добавляется впервые, но не работает, когда базовый вид изменяет высоту.Я установил self.autoresizesSubviews = NO; для базового вида.

Если я удаляю пользовательский вид из базового вида и добавляю его снова, когда высота не меняется, ничего не отображается, только пустой базовый вид.

Любые идеи, чтобы исправить положение пользовательского вида в нижней части базового вида.

Ответы [ 2 ]

0 голосов
/ 08 декабря 2011

Как насчет стрельбы setNeedsDisplay метод в этом представлении.

0 голосов
/ 08 декабря 2011

Попробуйте использовать

self.bounds = CGRectMake(0, 0, 320, 400);

Это сделает границы от верхнего левого угла до точки на правой стороне экрана, которая на 400 пикселей ниже начальной точки.

Вы можететакже попробуйте использовать метод

-(void)layoutSubviews

Я не помню правильный синтаксис, но я почти уверен, что это так.

надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...