iOS: как анимировать к новому ограничению автопоставки (высота)

Я никогда не работал сautolayout ограничения до. У меня есть небольшое новое приложение, над которым я работаю, и заметило, что представления NIB по умолчанию имеют автоматическое расположение. Итак, я решил воспользоваться возможностью работатьс участием это и попытаться выяснить, куда Apple идет с этим.

Первый вызов:

Мне нужно изменить размер MKMapView, и я хотел бы анимировать его на новую позицию. Если я делаю это так, как я привык:

[UIView animateWithDuration:1.2f
     animations:^{
         CGRect theFrame = worldView.frame;
         CGRect newFrame = CGRectMake(theFrame.origin.x, theFrame.origin.y, theFrame.size.width, theFrame.size.height - 170);
         worldView.frame = newFrame;
}];

... тогда MKMapView будет "привязываться" к своей первоначальной высоте всякий раз, когда обновляется родственное представление (в моем случае обновляется заголовок UISegmentedControl[myUISegmentedControl setTitle:newTitle forSegmentAtIndex:0]).

Итак, что ядумать Я хочу сделать, это изменить ограничения MKMapView с того, чтобы быть равным высоте родительского представления, чтобы быть относительно вершины UISegmentedControl, что онбыл покрытие:V:[MKMapView]-(16)-[UISegmentedControl]

Я хочу, чтобы высота MKMapView была укорочена, чтобы раскрылись некоторые элементы управления под видом карты. Для этого ядумать Мне нужно изменить ограничение с фиксированного полноразмерного представления на такое, где основание ограничено вершиной UISegmentedControl ... и я бы хотел, чтобы оно анимировалось при уменьшении представления до нового размера.

Как можно это сделать?

Редактировать -эта анимацияне оживляющий хотя нижняя часть обзора мгновенно поднимается на 170:

    [UIView animateWithDuration:1.2f
         animations:^{
             self.nibMapViewConstraint.constant = -170;

    }];

иnibMapViewConstraint подключен в IB к нижнему ограничению вертикального пространства.

Ответы на вопрос(6)

Ваш ответ на вопрос