Android If语句取决于所示的随机图像
我有一个imageview,点击一个按钮可以随机生成2个可能的图像中的1个 我希望当显示一个图像(R.drawable.aa)并按下另一个按钮时,会显示一个祝酒词 我的问题是,一旦显示一个随机图像并单击另一个按钮,什么都不会发生Android If语句取决于所示的随机图像,android,random,Android,Random,我有一个imageview,点击一个按钮可以随机生成2个可能的图像中的1个 我希望当显示一个图像(R.drawable.aa)并按下另一个按钮时,会显示一个祝酒词 我的问题是,一旦显示一个随机图像并单击另一个按钮,什么都不会发生 package com.example.isaiasalarcon.menu; import java.util.Random; import java.util.jar.Attributes; import android.app.Activity; impor
package com.example.isaiasalarcon.menu;
import java.util.Random;
import java.util.jar.Attributes;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;
import static com.example.isaiasalarcon.menu.R.drawable.aa;
public class buho extends Activity {
// UI components
private Button drawButton;
private Button boton2;
private ImageView cardImage;
// Random object
private final static Random random = new Random();
// The card deck
private final static int[] cardDeck = new int[] {
R.drawable.aa,
R.drawable.a2,
};
private Integer q;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_buho);
drawButton = (Button)findViewById(R.id.drawButton);
boton2 = (Button)findViewById(R.id.button2);
cardImage = (ImageView)findViewById(R.id.cardImage);
drawButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0)
{
Integer q = cardDeck[random.nextInt(cardDeck.length)];
cardImage.setImageResource(q);
}
});
boton2.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
if (q.equals(R.drawable.aa)) {
Toast toast = Toast.makeText(buho.this, "si", Toast.LENGTH_LONG);
toast.show();
} else {
Toast toast = Toast.makeText(buho.this, "no", Toast.LENGTH_LONG);
toast.show();
}
}
});
}
}
两件事:
1) Integer q
我看不出为什么需要整数。您应该能够int
2) onClick中的q
正在创建一个名为q
的新变量。您需要将代码更新为以下内容:(注意它前面没有类型声明,因此它意味着使用以前声明的变量)
这是Android应用程序吗?看起来像Java,有一个活动基类。考虑到他也使用了“Toast”一词,我会这么说。谢谢!现在它工作得很好。我已经把q设为最后的整数。
drawButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0)
{
q = cardDeck[random.nextInt(cardDeck.length)];
cardImage.setImageResource(q);
}
});