我目前正在做一个简单的动画下拉菜单,遇到了一个问题。
当我单击按钮时,视图向下滑动,按钮也向下滑动。按钮停留在同一位置(在视图底部),这很好。但是,按钮的onClickListener不会随之向下移动。
例如,如果我的按钮位于布局的顶部,则单击它,它将移出50,但onClickListener仍位于顶部。
单击按钮
public void onSlideViewButtonClick(View view) {
if (isUp) {
slideUp(myView);
slideUpButton(myButton);
myButton.setText("Slide down");
} else {
slideDown(myView);
slideDownButton(myButton);
myButton.setText("Slide up");
}
isUp = !isUp;
}
按钮的动画。
// slide the view from below itself to the current position
public void slideDownButton(View view){
view.setVisibility(View.VISIBLE);
TranslateAnimation animate = new TranslateAnimation(
0, // fromXDelta
0, // toXDelta
0, // fromYDelta
view.getHeight()); // toYDelta
animate.setDuration(500);
animate.setFillAfter(true);
view.startAnimation(animate);
}
// slide the view from its current position to below itself
public void slideUpButton(View view){
TranslateAnimation animate = new TranslateAnimation(
0, // fromXDelta
0, // toXDelta
view.getHeight(), // fromYDelta
0); // toYDelta
animate.setDuration(500);
animate.setFillAfter(true);
view.startAnimation(animate);
}
如何让onClick跟随按钮(如果这样)?