是否可以为UIEdgeInsets设置动画?

时间:2015-05-09 06:50:42

标签: ios swift animation uitextfield uiviewanimationtransition

我一直在努力为UIEdgeInsets中的变化制作动画。我已经尝试使用UIView.animateWithDuration并且插入只是跳转到最终值。有谁知道这是一个不能动画的属性?或者更好的是,有人知道一种动画插图的方法吗?

举个例子:

// Starting inset values
self.searchField.placeHolderInset = UIEdgeInsets(top: 0, left: 110, bottom: 0, right: 10)

// Animation block
UIView.animateWithDuration(0.1, animations: {
        self.searchField.placeHolderInset = UIEdgeInsets(top: 0, left: 18, bottom: 0, right: 10)
})

文本跳转到最终值,而不是在0.1秒内向左移动92个像素。 searchFieldUITextField.placeHolderInset是UIEdgeInset,用于确定UITextField占位符文本的插入内容。

编辑:达到预期效果的另一种方法是将UITextField的{​​{1}}从.textAlignment更改为.Center但赢得了也不动画。

1 个答案:

答案 0 :(得分:5)

您需要在动画块内部的视图上调用"MXVabc".each_char.map { |i| hash[i.capitalize] }.compact => [1000, 10, 5, 100]