2014-10-05 2 views
0

Я новичок в autolayout. У меня есть иерархия представлений, отлично работающая с автозапуском.UIDynamicAnimation issue with autolayout

У меня есть вид на контейнер, отображающий меню. Я оживляю эту точку зрения, используя Dynamics, чтобы сделать поп-эффект: представление растет от крошечного размера до его целевого размера.

Эффект отличный. Проблема заключается в том, что, поскольку представление должно сокращаться до крошечного крошечного размера (например, 5x5 в начале), вся первая часть анимации не может разрешить мои ограничения subviews (например, ведущее и конечное пространство не могут быть равны как 10, так как сам вид 10).

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

Мол, есть способ сказать autolayout:

  • Это трейлинг пространство должно быть 10, но если вы не можете игнорировать это

Или что-то подобное. Поскольку я знаю, какое ограничение следует игнорировать, было бы замечательно, если бы можно было сказать об этом автоаудиту, вместо того, чтобы иметь предупреждение и позволить ОС «угадать», какое ограничение следует отбросить.

Я уверен, что я мог бы делать все программно, пропуская все эти ограничения перед анимацией, анимируя и вернув их, но так как это большой табличный вид со многими строками, так много внутренних ячеек таблицы, чтобы считать, что это было бы очень трудно достичь.

Любое понимание/помощь/указатель на это было бы здорово.

+0

Может кто-то пожалуйста, объясните мне, почему он downvoted моего вопроса, так что я мог понять эту проблему ??? –

ответ

1

Это трейлинг пространство должно быть 10, но если вы не можете игнорировать это

Приведенное выше утверждение неоднозначно, мы должны определить, когда система рисования нужно добавить ограничение для заднего пространства 10 и когда его игнорировать, в частности. Это, очевидно, возможно путем его программного программирования. Но,

Вы можете установить ограничения, используя неравенства типа «больше или равно» или «меньше или равно», и это, надеюсь, решит вашу проблему.

enter image description here

+0

Итак, вы предполагаете, что я определяю свои ведущие/конечные пробелы как меньше или равные 10, в результате чего «необязательное» поведение я ищу. Я дам вам повод и дам вам знать. –

+0

Он фактически решает все и работает как шарм! Так просто, как «меньше или равно» (я чувствую себя глупо :) Спасибо –