Android 简单动画不起作用
我有以下代码:Android 简单动画不起作用,android,android-animation,Android,Android Animation,我有以下代码: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final LinearLayout layout = (LinearLayout)find
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final LinearLayout layout = (LinearLayout)findViewById(R.id.layout1);
Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener()
{
Animation slideUp = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.slide_up);
Animation slideDown = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.slide_down);
public void onClick(View v) {
Log.v("Hide","ButtonClicked");
if(layout.getVisibility()==View.VISIBLE){
layout.startAnimation(slideDown); //This is not Working
layout.setVisibility(View.GONE); //This Works
}
else {
layout.setVisibility(View.VISIBLE); //This Works
layout.startAnimation(slideUp); //This Works
}
}});
}
}
布局。开始动画(向下滑动);它不起作用。视图关闭时没有任何动画。
我希望首先出现动画,然后关闭视图。
我如何实现它?
我想我必须使用AnimationListner。
有人能帮我处理AnimationListner代码吗 我认为问题可能在于
查看.消失
不会等到动画向下滑动
完成(所以你看不到它)。。。试着把它说成
slideDown .setAnimationListener(new AnimationListener(){
@Override
public void onAnimationStart(Animation animation){}
@Override
public void onAnimationRepeat(Animation animation){}
@Override
public void onAnimationEnd(Animation animation){
layout.setVisibility(View.GONE);
}
});
layout.startAnimation(slideDown);