package com.example.chirag.example;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import java.util.Random;
public class MainActivity extends AppCompatActivity {
TextView TV;
Button upbutton;
Button downbutton;
TextView score;
String n1;
int bool=0;
int a;
int b;
int sc=0;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView TV = (TextView)findViewById(R.id.TV);
TextView score = (TextView)findViewById(R.id.score);
Button upbutton = (Button) findViewById(R.id.upbutton);
Button downbutton = (Button) findViewById(R.id.downbutton);
Button start = (Button) findViewById(R.id.start);
n1 = generate();
TV.setText(n1);
start.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
start();
}
});
}
String generate()
{
TextView TV = (TextView)findViewById(R.id.TV);
int n = new Random().nextInt(20);
String s = String.valueOf(n);
return s;
}
void start() {
Runnable myRunnable = new Runnable() {
@Override
public void run()
{while (bool == 0) {
final TextView TV = (TextView) findViewById(R.id.TV);
final TextView score = (TextView) findViewById(R.id.score);
Button upbutton = (Button) findViewById(R.id.upbutton);
Button downbutton = (Button) findViewById(R.id.downbutton);
Button start = (Button) findViewById(R.id.start);
String n2 = generate();
TV.setText(n2);
a = Integer.valueOf(n1.toString());
b = Integer.valueOf(n2.toString());
if (a > b) {
downbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String n3 = generate();
TV.setText(n3);
a = b;
b = Integer.valueOf(n3.toString());
score.setText("Score" + (sc + 1));
}
});
upbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
TV.setText("Game Over");
bool = 1;
}
});
} else {
upbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String n3 = generate();
TV.setText(n3);
a = b;
b = Integer.valueOf(n3.toString());
score.setText("Score" + (sc + 1));
}
});
downbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
TV.setText("Game Over");
bool = 1;
}
});
}
}
}
};
Thread myThread = new Thread(myRunnable);
myThread.start();
}
}
ich den Code in ein lauffähiges gesetzt haben. Die Logik scheint richtig, aber es funktioniert nicht. Die Methode generate erstellt eine neue Nummer und zeigt sie in 'TV' an. wenn Start geklickt wird, wird eine neue Nummer erzeugt und die zweite Zahl wird mit dem ersten verglichen. wenn die richtige Taste (nach oben oder nach unten) gedrückt wird, wird die Punktzahl erhöht und der Prozess wird fortgesetzt. „Game Over“, wenn die falsche TasteApp stürzt nach nur einer Iteration. Es lief überhaupt nicht ohne Runnable. Und nun stürzt es nach der ersten Iteration
Bitte senden Sie logact und Show zu kommunizieren uns, wo die Anwendung abstürzt. – Gil
https://mega.nz/#!Rp4TiCjB – Chirag
Hey. Könnte ich bitte Ihre E-Mail-ID haben? Ich würde gerne einige Zweifel klären! – Chirag