У меня есть этот странный новый вопрос: этот код (который прекрасно работает)возвращает объект в исходное положение (после анимации) при появлении клавиатуры
[UIView animateWithDuration:0.4 delay:0 options:UIViewAnimationOptionCurveEaseOut animations:^{
CGRect frame = _logoClaim.frame;
frame.origin.y -= 180;
_logoClaim.frame = frame;
} completion:NULL];
перемещает вид, который содержит UIImageView и UILabel к наверху моего self.view.
Вид, который перемещается, отображает UITextField. Когда я пытаюсь записать текст в UITextField, очевидно, появится клавиатура. И в этот момент анимированный вид до этого возвращается к исходной стартовой позиции !!!
В чем причина?
Не прошло и дня, что я не вижу какой-либо версии этого вопроса. Это связано с автоматической компоновкой. Если вы устанавливаете кадры любых объектов, созданных в раскадровке или xib (с автоматическим расположением), они будут возвращаться к их размеру и позициям, определяемым их ограничениями, всякий раз, когда представление нужно перерисовать. – rdelmar
Да, я знаю. И я понял, что мне нужно решить без автоматизации проблему ... но я подумал, что может быть проще. В любом случае ... спасибо много. Только одно: я держу ваш -1, но если вы видите каждый день эту проблему ... разве вы не думаете, что это вопрос для такого сайта? Или нам нужно опубликовать на сайте masterchef?!?!? думаю об этом. Имейте хороший день и извините меня за ваше время rdelmar: | – Blasco73
Как вы должны это решить, так это сделать IBOutlets для любых ограничений, которые вам нужно изменить, любые изменения их постоянных значений в коде вместо установки фреймов. – rdelmar