【发布时间】:2013-09-21 20:25:10
【问题描述】:
对不起大家,我是android编程的新手。
我有一个游戏,它由数组中的多个图像组成。我想在 4 个图像视图中显示 3 个相同的图像和 1 个不同的图像,如果答案是正确的并且玩家找到不同的图像,它将再次循环和随机。请任何人提供一个例子。
Random random = new Random( System.currentTimeMillis() );
int next = random.nextInt( 23 ) + 1;
int[] imageViews = {R.id.A,R.id.B,R.id.C,R.id.D };
int[] img = new int[] {R.drawable.img1,R.drawable.img2,R.drawable.img3,R.drawable.img4,
R.drawable.img5,R.drawable.img6,R.drawable.img7,R.drawable.img8,
R.drawable.img9,R.drawable.img10};
int [] ansImg = new int[]{R.drawable.aimg1,R.drawable.aimg2,R.drawable.aimg3,R.drawable.aimg4,
R.drawable.aimg5,R.drawable.aimg6,R.drawable.aimg7,R.drawable.aimg8,
R.drawable.aimg9,R.drawable.aimg10};
private void allImage() {
ImageView a= (ImageView)findViewById(R.id.A);
ImageView b= (ImageView)findViewById(R.id.B);
ImageView c= (ImageView)findViewById(R.id.C);
ImageView d= (ImageView)findViewById(R.id.D);
}
public void randomImage(){
List<Integer> generated = new ArrayList<Integer>();
for (int i = 0; i < imageViews.length; i++) {
int v = imageViews[i]-1;
int vs = imageViews[i]-3;
if ( generated.contains( next ) ) {
generated.add( next );
ImageView iv = (ImageView) findViewById( v );
ImageView ivs = (ImageView) findViewById( vs );
iv.setImageResource( img[next] );
ivs.setImageResource(ansImg[next]);
}
}
}
【问题讨论】:
-
没有得到你想要的,也请添加你的代码
-
好的先生..我会提供..
-
“如果我得到不同的图像,它将是随机的”是什么意思 从你的代码中我知道你想在 4 个不同的 imageViews 中显示图像,并且一个图像应该是不同的形式其他。但是没有处理任何类型的用户输入
-
对不起先生..我的意思是如果答案是正确的并且玩家找到不同的图像它将再次循环和随机。
-
所以你需要一个代码来做到这一点?