Android 关于海盗的If-Else未解决
你能告诉我如何用两组R.drawable.images创建if-else语句吗 我已经试过了,但我得到一个错误代码,说海盗未解决 位图图标=BitmapFactory.decodeResource(getResources(),pirates[i]) 这是我在首选项中的内容:Android 关于海盗的If-Else未解决,android,if-statement,sharedpreferences,live-wallpaper,Android,If Statement,Sharedpreferences,Live Wallpaper,你能告诉我如何用两组R.drawable.images创建if-else语句吗 我已经试过了,但我得到一个错误代码,说海盗未解决 位图图标=BitmapFactory.decodeResource(getResources(),pirates[i]) 这是我在首选项中的内容: 非常感谢似乎您正在尝试创建两个int数组,其中包含不同的图像集。但是您使用的是相同的变量名pirates。我建议您定义两个不同的变量int[]pirates和int[]piratesNatural,然后在需要时在这两个数
非常感谢似乎您正在尝试创建两个int数组,其中包含不同的图像集。但是您使用的是相同的变量名
pirates
。我建议您定义两个不同的变量int[]pirates
和int[]piratesNatural
,然后在需要时在这两个数组之间切换
Bitmap icon;
if(natural)
icon = BitmapFactory.decodeResource(getResources(),piratesNatural[i]);
else
icon = BitmapFactory.decodeResource(getResources(),pirates[i]);
你在做动画吗
int frame=0;
int frametime=24;
Bitmap icon1 BitmapFactory.decodeResource(getResources(), R.drawable.image_1,);
Bitmap icon2 BitmapFactory.decodeResource(getResources(), R.drawable.image_2,);
Bitmap icon3 BitmapFactory.decodeResource(getResources(), R.drawable.image_3,);
Bitmap icon4 BitmapFactory.decodeResource(getResources(), R.drawable.image_4,);
//in update
frametime--;
if(frametime<=0){
frame++;
frametime=24;
}
if(frame>3){
frame=0;
}
//in onDraw
switch(frame){
case 0:
canvas.drawBitmap(icon1,x,y,null);
break;
case 1:
canvas.drawBitmap(icon2,x,y,null);
break;
case 2:
canvas.drawBitmap(icon3,x,y,null);
break;
case 3:
canvas.drawBitmap(icon4,x,y,null);
break;
default:
canvas.drawBitmap(icon1,x,y,null);
break;}
int帧=0;
整数帧时间=24;
位图icon1 BitmapFactory.decodeResource(getResources(),R.drawable.image_1,);
位图icon2 BitmapFactory.decodeResource(getResources(),R.drawable.image_2,);
位图icon3 BitmapFactory.decodeResource(getResources(),R.drawable.image_3,);
位图icon4 BitmapFactory.decodeResource(getResources(),R.drawable.image_4,);
//更新中
帧时--;
如果(帧时间3){
帧=0;
}
//在昂德劳
交换机(帧){
案例0:
drawBitmap(icon1,x,y,null);
打破
案例1:
drawBitmap(icon2,x,y,null);
打破
案例2:
canvas.drawBitmap(icon3,x,y,null);
打破
案例3:
canvas.drawBitmap(icon4,x,y,null);
打破
违约:
drawBitmap(icon1,x,y,null);
中断;}
我们需要一个更好的环境,来了解所有这些内容在您的活动中的位置。它看起来像是一个变量范围,为您提供注释代码。什么是可变范围问题?我只是在活动中添加了更多代码。啊,你们真是天才。我花了很多时间试着让它工作。但你只花了几分钟就明白了。非常感谢。我到家后会试试这种方法。我是一名初学者:-(谢谢你,谢谢你!不客气!如果它对你有用,请将其标记为正确答案。我刚刚让它起作用!耶,非常感谢!但有一个问题,为什么每次我打开/关闭不同的应用程序时,幻灯片都会切换到下一张图片?我知道这与你今天为我提供的帮助无关。你知道吗是什么导致了这个问题?
Bitmap icon;
if(natural)
icon = BitmapFactory.decodeResource(getResources(),piratesNatural[i]);
else
icon = BitmapFactory.decodeResource(getResources(),pirates[i]);
int frame=0;
int frametime=24;
Bitmap icon1 BitmapFactory.decodeResource(getResources(), R.drawable.image_1,);
Bitmap icon2 BitmapFactory.decodeResource(getResources(), R.drawable.image_2,);
Bitmap icon3 BitmapFactory.decodeResource(getResources(), R.drawable.image_3,);
Bitmap icon4 BitmapFactory.decodeResource(getResources(), R.drawable.image_4,);
//in update
frametime--;
if(frametime<=0){
frame++;
frametime=24;
}
if(frame>3){
frame=0;
}
//in onDraw
switch(frame){
case 0:
canvas.drawBitmap(icon1,x,y,null);
break;
case 1:
canvas.drawBitmap(icon2,x,y,null);
break;
case 2:
canvas.drawBitmap(icon3,x,y,null);
break;
case 3:
canvas.drawBitmap(icon4,x,y,null);
break;
default:
canvas.drawBitmap(icon1,x,y,null);
break;}