我一直在努力为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个像素。 searchField
是UITextField
,.placeHolderInset
是UIEdgeInset,用于确定UITextField
占位符文本的插入内容。
编辑:达到预期效果的另一种方法是将UITextField
的{{1}}从.textAlignment
更改为.Center
但赢得了也不动画。
答案 0 :(得分:5)
您需要在动画块内部的视图上调用"MXVabc".each_char.map { |i| hash[i.capitalize] }.compact
=> [1000, 10, 5, 100]
。