Java 如何让变量等待用户按下四个按钮中的一个?
好吧,我会尽量说清楚的 我有一个名为Java 如何让变量等待用户按下四个按钮中的一个?,java,android,Java,Android,好吧,我会尽量说清楚的 我有一个名为int tentiva的变量,我希望它根据用户按下的按钮接收特定值 我有四个按钮:btPedra[0],btPedra[1],btPedra[2],btPedra[3] 如果用户按下按钮btPedra[0],变量将收到数字0 如果用户按下按钮btPedra[1],变量将收到数字1,依此类推 注意:程序应等待用户按下其中一个按钮继续 我的代码如下所示: for (contador = 0; contador < jogada; ++contador){
int tentiva
的变量,我希望它根据用户按下的按钮接收特定值
我有四个按钮:btPedra[0]
,btPedra[1]
,btPedra[2]
,btPedra[3]
如果用户按下按钮btPedra[0]
,变量将收到数字0
如果用户按下按钮btPedra[1]
,变量将收到数字1,依此类推
注意:程序应等待用户按下其中一个按钮继续
我的代码如下所示:
for (contador = 0; contador < jogada; ++contador){
tentativa =
// HERE THE VARIABLE tentativa SHOULD RECEIVE 0, 1, 2 OR 3 DEPENDING ON THE BUTTON PRESSED.
if (tentativa[contador] == sequencia[contador]){
acertos++;
} else {
gameOver();
}
}
for(contador=0;contador
当按下按钮时,我也想改变它的背景色
注意:我正在用java为android编程 使用下面的代码
View.OnClickListener clickListener=new View.OnClickListener() {
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btPedra[0]:
// if User Press Button 0/1/2/3/4 at time you call a method
case R.id.btPedra[1]:
btPedraOne();
break;
case R.id.btPedra[2]:
btnPedrTwo();
break;
case R.id.btPedra[3]:
btnPedrThree();
break;
case R.id.btPedra[4]:
btnPedraFor();
break;
default:
break;
}
}
使用下面的代码
View.OnClickListener clickListener=new View.OnClickListener() {
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btPedra[0]:
// if User Press Button 0/1/2/3/4 at time you call a method
case R.id.btPedra[1]:
btPedraOne();
break;
case R.id.btPedra[2]:
btnPedrTwo();
break;
case R.id.btPedra[3]:
btnPedrThree();
break;
case R.id.btPedra[4]:
btnPedraFor();
break;
default:
break;
}
}
通过设置
ClickListener
,处理btPedra[0]、btPedra[1]、btPedra[2]、btPedra[3]的点击事件
@Override
public void onClick(View v) {
switch(v.getId()) {
case R.id.<id_of_btPedra[0]> :
// set variable tentativa to 0
tentativa = 0;
break;
case R.id.<id_of_btPedra[1]> :
// set variable tentativa to 1
tentativa = 1;
break;
case R.id.<id_of_btPedra[2]> :
// set variable tentativa to 2
tentativa = 2;
break;
case R.id.<id_of_btPedra[3]> :
// set variable tentativa to 3
tentativa = 3;
break;
}
}
@覆盖
公共void onClick(视图v){
开关(v.getId()){
案例R.id.:
//将变量tentiva设置为0
tentiva=0;
打破
案例R.id.:
//将变量tentiva设置为1
tentiva=1;
打破
案例R.id.:
//将变量tentiva设置为2
tentiva=2;
打破
案例R.id.:
//将变量tentiva设置为3
tentiva=3;
打破
}
}
通过设置点击监听器来处理btPedra[0]、btPedra[1]、btPedra[2]、btPedra[3]的点击事件
@Override
public void onClick(View v) {
switch(v.getId()) {
case R.id.<id_of_btPedra[0]> :
// set variable tentativa to 0
tentativa = 0;
break;
case R.id.<id_of_btPedra[1]> :
// set variable tentativa to 1
tentativa = 1;
break;
case R.id.<id_of_btPedra[2]> :
// set variable tentativa to 2
tentativa = 2;
break;
case R.id.<id_of_btPedra[3]> :
// set variable tentativa to 3
tentativa = 3;
break;
}
}
@覆盖
公共void onClick(视图v){
开关(v.getId()){
案例R.id.:
//将变量tentiva设置为0
tentiva=0;
打破
案例R.id.:
//将变量tentiva设置为1
tentiva=1;
打破
案例R.id.:
//将变量tentiva设置为2
tentiva=2;
打破
案例R.id.:
//将变量tentiva设置为3
tentiva=3;
打破
}
}
将onclick侦听器添加到按钮并在onclick方法中设置变量
Button-Button=(Button)findViewById(R.id.Button\u-id);
setOnClickListener(新视图.OnClickListener(){
公共void onClick(视图v){
//设置变量。
}
});
向按钮添加onclick侦听器,并在onclick方法中设置变量
Button-Button=(Button)findViewById(R.id.Button\u-id);
setOnClickListener(新视图.OnClickListener(){
公共void onClick(视图v){
//设置变量。
}
});
我会稍微不同地解决这个问题
假设您以以下方式定义按钮:
<Button
android:id="@+id/button1"
...
android:onClick="buttonClick1"/>
<Button
android:id="@+id/button2"
...
android:onClick="buttonClick2"/>
<Button
android:id="@+id/button3"
...
android:onClick="buttonClick3"/>
最后,gameCheck将是检查游戏是否结束并进行计数的方法:
public void gameCheck(int tentativa) {
if (tentativa == sequencia[current_step]){
acertos++;
} else {
gameOver();
}
current_step++;
contador++;
}
}
注意,我从gameCheck中提取了一些变量,并假设它们是这个类的变量
关于样式的最后一个观察结果是,我没有使用三种方法来点击按钮,而是只使用一种方法,并使用id来知道应该传递给gameCheck的值
我希望它是有意义的,并且对您有效。我会稍微不同地解决这个问题
假设您以以下方式定义按钮:
<Button
android:id="@+id/button1"
...
android:onClick="buttonClick1"/>
<Button
android:id="@+id/button2"
...
android:onClick="buttonClick2"/>
<Button
android:id="@+id/button3"
...
android:onClick="buttonClick3"/>
最后,gameCheck将是检查游戏是否结束并进行计数的方法:
public void gameCheck(int tentativa) {
if (tentativa == sequencia[current_step]){
acertos++;
} else {
gameOver();
}
current_step++;
contador++;
}
}
注意,我从gameCheck中提取了一些变量,并假设它们是这个类的变量
关于样式的最后一个观察结果是,我没有使用三种方法来点击按钮,而是只使用一种方法,并使用id来知道应该传递给gameCheck的值
我希望它有意义,并且对您有效。尝试向按钮添加事件侦听器,然后执行您需要的操作。您好。您不应在邮件中包含你好
、谢谢
、你好吗?
或任何其他问候语。如果您对为什么感兴趣,请阅读以下内容:)尝试将事件侦听器添加到按钮,然后执行所需的操作。您好。您不应在邮件中包含你好
、谢谢
、你好吗?
或任何其他问候语。如果您对为什么感兴趣,请阅读以下内容:)尝试将事件侦听器添加到按钮,然后执行所需的操作。您好。您不应在邮件中包含你好
、谢谢
、你好吗?
或任何其他问候语。如果您对为什么感兴趣,请阅读以下内容:)