如何动画SlidingDrawer?

时间:2011-05-10 17:26:21

标签: android slidingdrawer

我尝试使用animateOpen()animateClose()打开/关闭我的抽屉,但似乎它会立即打开和关闭,例如open()close()。怎么了?

我已经看到SlidingDrawer无法自定义(例如,无法使用自定义动画制作动画,即使没有自定义打开/关闭持续时间)。我是否必须复制SlidingDrawer的代码才能更改动画持续时间?

由于

protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.home);        

    // Open and close banner
    final SlidingDrawer banner = (SlidingDrawer) findViewById(R.id.banner);
    banner.animateOpen();
    Handler handler = new Handler(); 
    handler.postDelayed(new Runnable() { 
         public void run() { 
              banner.animateClose();
         } 
    }, 2000); 

    //...

}

修改

否则

final SlidingDrawer banner = (SlidingDrawer) findViewById(R.id.banner);
final Animation hideBanner = AnimationUtils.loadAnimation(this, R.anim.hide_banner);
banner.setAnimation(showBanner);

仅为处理程序设置动画,即使我没有banner.animateOpen()banner.startAnimation(showbanner)

1 个答案:

答案 0 :(得分:3)

This youtube video显示带有自定义动画的滑动抽屉。您应该能够使用或修改this code来解决您的问题......