微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android如何迭代R.drawable对象

我正在尝试逐帧动画显示并想要遍历drawables,因此我不必在帧数增加时键入所有名称.

但是我似乎无法找到如何遍历drawables.我已经查了一些java for循环教程,但他们都只是打印的东西(据我确定)不必在这里使用.

这是相关的代码(图像的名称是dude1,dude2,…):

   private void startAnimation(){
       animation = new AnimationDrawable();
       for (int i = 1; i < 4; i++) {
           animation.addFrame(getResources().getDrawable(R.drawable.dude(i)), 100);
       }
       animation.setoneshot(true);

       ImageView imageView = (ImageView) findViewById(R.id.img);
       RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(80, 90);
       params.alignWithParent = true;
       params.addRule(RelativeLayout.CENTER_IN_PARENT);      
       imageView.setLayoutParams(params);
       imageView.setimageDrawable(animation);
       imageView.post(new Starter());
   }

谢谢!

解决方法:

我认为最后的答案很正确但可能是:

for (int i=0; i <10;i++){
      animation.addFrame(
         getResources().getDrawable(getResources().getIdentifier("dude" + i,"drawable",
             getPackageName()),100);
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐