Android AnimationDrawable创建无限循环
我正在使用AnimationDrawable创建一帧一帧的效果,我想当图像改变时,圆点一起改变,我的代码创建一个无限循环,如果我在(mframeAnimation.isRunning())时退出Android AnimationDrawable创建无限循环,android,infinite-loop,animationdrawable,Android,Infinite Loop,Animationdrawable,我正在使用AnimationDrawable创建一帧一帧的效果,我想当图像改变时,圆点一起改变,我的代码创建一个无限循环,如果我在(mframeAnimation.isRunning())时退出,它只需检查一次值并停止 问题: 那么,当图像改变时,我应该如何创建一个无限检查、一个监听器或类似的东西来改变圆圈呢 private void selectDot(int arg2) { // TODO Auto-generated method stub
,它只需检查一次值并停止
问题:
那么,当图像改变时,我应该如何创建一个无限检查、一个监听器或类似的东西来改变圆圈呢
private void selectDot(int arg2) {
// TODO Auto-generated method stub
for(int i=0;i<imageView.length;i++){
if(i==arg2) imageView[i].setImageResource(R.drawable.black_circle);
else imageView[i].setImageResource(R.drawable.gray_circle);
}
}
class Starter implements Runnable {
public void run() {
mframeAnimation.start();
while(mframeAnimation.isRunning()){
// Get the frame of the animation
Drawable currentFrame, checkFrame;
currentFrame = mframeAnimation.getCurrent();
int frameNumber;
// Checks the position of the frame
for (int i = 0; i < mframeAnimation.getNumberOfFrames(); i++) {
checkFrame = mframeAnimation.getFrame(i);
if (checkFrame == currentFrame) {
frameNumber = i;
// Toast.makeText(getActivity(), Integer.toString(frameNumber), Toast.LENGTH_SHORT).show();
selectDot(frameNumber);
break;
}
}
}
}
}
private void selectDot(int arg2){
//TODO自动生成的方法存根
对于(int i=0;i我应用的ViewFlipper tp获得了旋转木马效果,我对动画进行了一些调整,使其完全符合我的要求。因此,是的ViewFlipper是您的答案。您的问题是?通常它有助于指出您的期望和实际发生的情况。我认为这很清楚,但我编辑了,thanks@Marckaraujo我做了一个非常相似的caro也用于广告,我在你做的时候就开始做了,然后发现ViewFlipper更好,使用起来更快,而且它通过提供的所有图像内置了动画,如果你需要更多信息,请告诉我,我可以提供一些代码。@Naderayad,哇,你救了我的命,我刚刚看到一个非常简单的例子,它是w我需要什么,如果你能给我提供一些代码,谢谢你知道我应该用什么样的监听器吗?@Marckaraujo为什么它不起作用?你的问题是什么?让我知道我能帮什么忙吗?我已经实现了我的旋转木马,它工作起来很好,请看图片,动画与图片配合得很好。它更改正确,我正在尝试从当前显示的图像中获取id并使用它来选择点图像,但我认为这是不可能的,我只是认为我需要与图片一起创建一个点图像,对吗?@Marckaraujo图像是动态的吗???或者你知道ur gana显示的图像的数量吗?好吧,我将其付诸实施,我刚刚创建了一个带有图像和点图像的线性布局ge在ViewFlipper内部,唯一的问题是需要使用dotImage创建大量Imageview。