Android动画+移动布局
问题描述:
我想在布局中点击按钮时将LinearLayout的一半移出屏幕,并且当按下一半按钮移出布局时,它将返回到其原始位置。Android动画+移动布局
我知道这可以简单地通过使用翻译布局和将布局的x位置从0%移动到-50%来完成,并且相反。
我面临的问题是:
- 虽然布局绘制半出它实际上没有移动即布局被抽出,但坐标(采取在点击)它的孩子都是不据此搬到新的位置。
是否有任何方法来移动布局属性。我想要当第一次点击的按钮将其移出一半时第二次点击回滚布局。
答
这应该给你一展身手:
@SuppressWarnings("unused")
private void setLeftMargin(int value) {
((LinearLayout.LayoutParams)myLinearLayout.getLayoutParams()).leftMargin = value;
myLinearLayout.requestLayout();
}
用途:用于动画库
ObjectAnimator.ofInt(this, "leftMargin",
0, -1 * halfWidth).setDuration(ANIM_DURATION).start();
和
ObjectAnimator.ofInt(this, "leftMargin",
-1 * halfWidth, 0).setDuration(ANIM_DURATION).start();
阅读@达米安的评论。
试试这个:http://developer.android.com/reference/android/animation/ObjectAnimator.html - 对于较老的Android API:http://nineoldandroids.com/ – damian 2013-02-28 12:38:33
我有同样的问题!! – Bhimbim 2014-03-21 06:45:45