私は自分自身でいくつかのアンドロイドを学ぼうとしています。私は非常に基本的な質問があり、Googleは私にまだ答えられませんでした。Androidスタジオ変数ボタン名
少しのXOXゲームを作って自分のスキルを向上させたい。 「AI」の最初のステップは無作為化されています。
if (Zugzahl == 1) {
while (var == 0) {
Random();
if (ACButton[Rand].getText().equals = "X") {
Random();
} else {
ACbutton[Rand].setText() = "O";
var = 1;
}
}
}
Random()
数として0を除外少しラインです。私は基本的に、ACButtonの名前に乱数を追加して、それを正しく扱いたいと思っています。
はここにあなたの助け
いただきありがとうござい全体のことである:
package com.example.abu.myapplication;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import java.util.Random;
public class MainActivity extends AppCompatActivity {
private Button ACButton1;
private Button ACButton2;
private Button ACButton3;
private Button ACButton4;
private Button ACButton5;
private Button ACButton6;
private Button ACButton7;
private Button ACButton8;
private Button ACButton9;
private int Zugzahl;
private int Rand;
private double var;
private String[] ACButton = {String.valueOf(ACButton1), String.valueOf(ACButton2), String.valueOf(ACButton3), String.valueOf(ACButton4), String.valueOf(ACButton5), String.valueOf(ACButton6), String.valueOf(ACButton7), String.valueOf(ACButton8), String.valueOf(ACButton9)};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ACButton1 = (Button) findViewById(R.id.button);
ACButton1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!ACButton1.getText().equals("0")) {
ACButton1.setText("X");
Zugzahl = Zugzahl + 1;
Logic();
}
}
});
ACButton2 = (Button) findViewById(R.id.button2);
ACButton2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!ACButton2.getText().equals("O")) {
ACButton2.setText("X");
Zugzahl = Zugzahl + 1;
Logic();
}
}
});
ACButton3 = (Button) findViewById(R.id.button3);
ACButton3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!ACButton3.getText().equals("O")) {
ACButton3.setText("X");
Zugzahl = Zugzahl + 1;
Logic();
}
}
});
ACButton4 = (Button) findViewById(R.id.button4);
ACButton4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!ACButton4.getText().equals("O")) {
ACButton4.setText("X");
Zugzahl = Zugzahl + 1;
Logic();
}
}
});
ACButton5 = (Button) findViewById(R.id.button5);
ACButton5.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!ACButton5.getText().equals("O")) {
ACButton5.setText("X");
Zugzahl = Zugzahl + 1;
Logic();
}
}
});
ACButton6 = (Button) findViewById(R.id.button6);
ACButton6.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!ACButton6.getText().equals("O")) {
ACButton6.setText("X");
Zugzahl = Zugzahl + 1;
Logic();
}
}
});
ACButton7 = (Button) findViewById(R.id.button7);
ACButton7.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!ACButton7.getText().equals("O")) {
ACButton7.setText("X");
Zugzahl = Zugzahl + 1;
Logic();
}
}
});
ACButton8 = (Button) findViewById(R.id.button8);
ACButton8.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!ACButton8.getText().equals("O")) {
ACButton8.setText("X");
Zugzahl = Zugzahl + 1;
Logic();
}
}
});
ACButton9 = (Button) findViewById(R.id.button9);
ACButton9.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!ACButton9.getText().equals("O")) {
ACButton9.setText("X");
Zugzahl = Zugzahl + 1;
Logic();
}
}
});
}
private void Logic() {
while (!ACButton1.getText().equals("X") && !ACButton4.getText().equals("X") && !ACButton7.getText().equals("X") ||
!ACButton2.getText().equals("X") && !ACButton5.getText().equals("X") && !ACButton8.getText().equals("X") ||
!ACButton3.getText().equals("X") && !ACButton6.getText().equals("X") && !ACButton9.getText().equals("X") ||
!ACButton1.getText().equals("X") && !ACButton2.getText().equals("X") && !ACButton3.getText().equals("X") ||
!ACButton4.getText().equals("X") && !ACButton5.getText().equals("X") && !ACButton6.getText().equals("X") ||
!ACButton7.getText().equals("X") && !ACButton8.getText().equals("X") && !ACButton9.getText().equals("X") ||
!ACButton1.getText().equals("X") && !ACButton5.getText().equals("X") && !ACButton9.getText().equals("X") ||
!ACButton7.getText().equals("X") && !ACButton5.getText().equals("X") && !ACButton3.getText().equals("X")) {
if (Zugzahl == 1) {
while (var == 0) {
Random();
if (ACButton[Rand].getText().equals = "X") {
Random();
} else {
ACButton[Rand].setText() = "O";
var = 1;
}
}
}
}
}
private void Random() {
Rand = new Random().nextInt(9);
}
private void endgame() {
}
}
私は "XOX"は英語で "Tic Tac Toe"と呼ばれると思います。 AKA "Connect Three"。 しかし、もう一度あなたの質問は何ですか? – Shark
ドイツではTic Tac Toeとも呼ばれますが、XOXを書く方が簡単です。私は自分のフィールドの変数番号が入る場所としてコード内に[Rand]を持っていますが、フィールドから実際の番号としてRand変数を受け入れるためにAndroidスタジオを持ってくる方法はわかりません。私の9つのフィールドは9までACButton1と呼ばれています。私はランダム番号で固定番号を切り替える必要があります。 –