被TranslateAnimation搞晕了。
mailboxHeaderBar.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { final LinearLayout.LayoutParams layoutParams = (LinearLayout.LayoutParams) mailboxHeaderBar.getLayoutParams(); int bottomMargin = layoutParams.bottomMargin; if (bottomMargin < 0) { mailboxHeaderBar.startAnimation(bottomFrameAnimationIn); layoutParams.bottomMargin = 0; }else{ mailboxHeaderBar.startAnimation(bottomFrameAnimationOut); layoutParams.bottomMargin = -205; } mailboxHeaderBar.setLayoutParams(layoutParams); } });
其实在你startAnimation的时候View的位置已经变了。 Animation里面的参数值是需要相对你移动view之后的值。 有点晕 fuck