它有三个按钮:
自旋 - 刚刚起着纺丝筒的声音(这个工程目前)。
插入回合 - 将一颗子弹放入左轮手枪(尚未得到)并播放声音(作品)。
玩法 - 根据机会以及左轮手枪中有多少子弹,使用布尔型失火或发射一轮(如果发射一发圆,从子弹中取出子弹)。目前我使用的是1到6之间的随机数字,0是您在启动应用程序时的默认轮次(因此它包括在左轮手枪中没有轮次的机制)。
这里是我的活动是什么样子:
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.media.MediaPlayer;
import java.util.Random;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Buttons of Main-activity displayed
Button one = (Button) findViewById(R.id.spinner);
one.setOnClickListener(this);
Button two = (Button) findViewById(R.id.insert_Round);
two.setOnClickListener(this);
Button three = (Button) findViewById(R.id.fire_weapon);
three.setOnClickListener(this);
int rounds_left = 0;
}
//Let's make addition.
public static int add(int i) {
i++;
return i;
}
@Override
public void onClick (View v) {
int rounds_left = 0;
switch (v.getId()) {
case R.id.spinner:
//play spinner sound
final MediaPlayer mp1 = MediaPlayer.create(this, R.raw.spinnersound);
mp1.start();
break;
case R.id.insert_Round:
//play insert_round sound
final MediaPlayer mp2 = MediaPlayer.create(this, R.raw.insert_round_sound);
mp2.start();
//Adds one round into chamber (I need help here)
break;
case R.id.fire_weapon:
//Random number between 1 and 6... *Click* or *Fire*
Random rand = new Random();
int play_chances = rand.nextInt(7) + 1;
if (play_chances < rounds_left) {
final MediaPlayer mp4 = MediaPlayer.create(this, R.raw.fire_sound);
mp4.start();
//Take a bullet away (need help here too)
} else {
final MediaPlayer mp3 = MediaPlayer.create(this, R.raw.misfire_sound);
mp3.start();
}
break;
}
}
}
而且this是怎么样子至今。
我有两个问题:
如何让这个当我按下插入圆形按钮,我可以添加1轮我rounds_left?
我能够创建一个添加方法(这就是所谓的?),使这种增加发生。我试图多次应用它无济于事。 public static int add(int i) {
i++;
return i;
}
我如何采取轮从我rounds_left离开我已经履行了子弹后?
+0
您想先将int rounds_left成为一个成员变量(将它放置在类的顶部和方法之外)。否则,每次点击该按钮时它将被重置为0,并且在onClick之外无用 –
+0
我已更改int rounds_left,以便它位于onClick之外。我把它一直放在课堂上。 –