Ich versuche, eine einfache Quiz-App zu erstellen, die Benutzer wählen wird, was sie denken, die richtigen Antworten sind und wenn sie auf die Schaltfläche Senden klicken, können sie ihre Punktzahl jeweils sehen Zeit. Die Quizfragen sind in CheckBoxes und radioButtons. Das Problem ist, dass ich nicht weiß, wie man den Punktestand über die Schaltfläche auf dem Bildschirm jedes Mal anzeigt, wenn der Benutzer auf die Schaltfläche klickt. Vielen Dank für jede Hilfe (dieses Ding 3 Tage versuchen!)Wie eine Schaltfläche zeigt das Ergebnis abhängig von RadioButtons Benutzerauswahl in Android
MainActivity.java
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.CheckBox;
import android.widget.RadioButton;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
String Name;
int score = 0;
String rightAnswer = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void onCheckboxClicked(View view) {
//This method is called when the checkBox is clicked
//first right box
CheckBox Aristotle = (CheckBox) findViewById(R.id.firstLeftCheckBox);
boolean hasAristotle = Aristotle.isChecked();
//first left box
CheckBox Pythagoras = (CheckBox) findViewById(R.id.firstRightCheckBox);
boolean hasPythagoras = Pythagoras.isChecked();
//second left box
CheckBox William_McKinley = (CheckBox) findViewById(R.id.secondLeftCheckBox);
boolean hasWilliamMcKinley = William_McKinley.isChecked();
//second right box
CheckBox Abraham_Lincoln = (CheckBox) findViewById(R.id.secondRightCheckBox);
boolean hasAbraham_Lincoln = Abraham_Lincoln.isChecked();
//third left box
CheckBox China = (CheckBox) findViewById(R.id.thirdLeftCheckBox);
boolean hasChina = China.isChecked();
//third right box
CheckBox Thailand = (CheckBox) findViewById(R.id.thirdRightCheckBox);
boolean hasThailand = Thailand.isChecked();
//fourth left box
CheckBox Louis_XIV = (CheckBox) findViewById(R.id.fourthLeftCheckBox);
boolean hasLouis_XIV = Louis_XIV.isChecked();
//fourth right box
CheckBox Michael_I = (CheckBox) findViewById(R.id.fourthRightCheckBox);
boolean hasMichael_I = Michael_I.isChecked();
//fifth left box
CheckBox threeHundredThirty = (CheckBox) findViewById(R.id.fifthLeftCheckBox);
boolean hasthreeHundredThirty = threeHundredThirty.isChecked();
//fifth right box
CheckBox threeHundredThirtySix = (CheckBox) findViewById(R.id.fifthRightCheckBox);
boolean hasthreeHundredThirtySix = threeHundredThirtySix.isChecked();
//sixth left box
CheckBox universityOfZurich = (CheckBox) findViewById(R.id.sixthLeftCheckBox);
boolean hasuniversityOfZurich = universityOfZurich.isChecked();
//sixth right box
CheckBox universityOfGermany = (CheckBox) findViewById(R.id.sixthRightCheckBox);
boolean hasuniversityOfGermany = universityOfGermany.isChecked();
boolean checked = ((CheckBox) view).isChecked();
switch (view.getId()) {
//display a toast message all right answers
case R.id.firstLeftCheckBox:
if (checked)
Toast.makeText(this, "Hooray!Your answer is right", Toast.LENGTH_SHORT).show();
break;
case R.id.secondRightCheckBox:
if (checked)
Toast.makeText(this, "Hooray!Your answer is right", Toast.LENGTH_SHORT).show();
break;
case R.id.thirdLeftCheckBox:
if (checked)
Toast.makeText(this, "Hooray!Your answer is right", Toast.LENGTH_SHORT).show();
break;
case R.id.fourthLeftCheckBox:
if (checked)
Toast.makeText(this, "Hooray!Your answer is right", Toast.LENGTH_SHORT).show();
break;
case R.id.fifthRightCheckBox:
if (checked)
Toast.makeText(this, "Hooray!Your answer is right", Toast.LENGTH_SHORT).show();
break;
case R.id.sixthLeftCheckBox:
if (checked)
Toast.makeText(this, "Hooray!Your answer is right", Toast.LENGTH_SHORT).show();
break;
//display a toast message for all wrong answers
case R.id.firstRightCheckBox:
if (checked)
Toast.makeText(this, "Sorry, try again!", Toast.LENGTH_SHORT).show();
break;
case R.id.secondLeftCheckBox:
if (checked)
Toast.makeText(this, "Sorry, try again!", Toast.LENGTH_SHORT).show();
break;
case R.id.thirdRightCheckBox:
if (checked)
Toast.makeText(this, "Sorry, try again!", Toast.LENGTH_SHORT).show();
break;
case R.id.fourthRightCheckBox:
if (checked)
Toast.makeText(this, "Sorry, try again!", Toast.LENGTH_SHORT).show();
break;
case R.id.fifthLeftCheckBox:
if (checked)
Toast.makeText(this, "Sorry, try again!", Toast.LENGTH_SHORT).show();
break;
case R.id.sixthRightCheckBox:
if (checked)
Toast.makeText(this, "Sorry, try again!", Toast.LENGTH_SHORT).show();
break;
}
}
//Radio Box
public void onRadioButtonClicked(View view) {
RadioButton astronomyRadioButton = (RadioButton) findViewById(R.id.astronomyRadioButton);
RadioButton philosophyRadioButton = (RadioButton) findViewById(R.id.philosophyRadioButton);
boolean checked = ((RadioButton)view).isChecked();
switch (view.getId()){
case R.id.astronomyRadioButton:
Toast.makeText(this, "Hooray!Your answer is right", Toast.LENGTH_SHORT).show();
break;
case R.id.philosophyRadioButton:
Toast.makeText(this, "Sorry, try again!", Toast.LENGTH_SHORT).show();
break;
}}}
activity_main.xml
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.allyouask.hungryforhistory.MainActivity">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:id="@+id/nameField"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="sans-serif-light"
android:inputType="text"
android:hint="Name"
android:textColor="#EF6C00"
android:textSize="15sp"/>
<TextView
android:id="@+id/welcomeMessage"
style="@style/WelcomeScreenText"
android:fontFamily="sans-serif-light"
android:text="Welcome to Hungry For History!\n Let's get started!"/>
<TextView
android:id="@+id/firstQuestion"
style="@style/QuestionsStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/welcomeMessage"
android:paddingLeft="5dp"
android:text="Who was born in Ancient City Stagira, Greece?"/>
<CheckBox
android:id="@+id/firstLeftCheckBox"
style="@style/CheckBoxStyle"
android:layout_below="@+id/firstQuestion"
android:text="Aristotle"
android:onClick="onCheckboxClicked"/>
<CheckBox
android:id="@+id/firstRightCheckBox"
style="@style/CheckBoxStyle"
android:layout_below="@+id/firstQuestion"
android:layout_toRightOf="@+id/firstLeftCheckBox"
android:text="Pythagoras"
android:onClick="onCheckboxClicked"/>
<TextView
android:id="@+id/secondQuestion"
style="@style/QuestionsStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/firstLeftCheckBox"
android:paddingLeft="5dp"
android:text="Who said in his last speech:...?"/>
<CheckBox
android:id="@+id/secondLeftCheckBox"
style="@style/CheckBoxStyle"
android:layout_alignParentLeft="true"
android:layout_below="@+id/secondQuestion"
android:text="William McKinley"
android:onClick="onCheckboxClicked"/>
<CheckBox
android:id="@+id/secondRightCheckBox"
style="@style/CheckBoxStyle"
android:layout_below="@+id/secondQuestion"
android:layout_toRightOf="@+id/secondLeftCheckBox"
android:text="Abraham Lincoln"
android:onClick="onCheckboxClicked"/>
<TextView
android:id="@+id/thirdQuestion"
style="@style/QuestionsStyle"
android:layout_below="@+id/secondLeftCheckBox"
android:paddingLeft="5dp"
android:text="Where the An Lushan Rebellion took place?"/>
<CheckBox
android:id="@+id/thirdLeftCheckBox"
style="@style/CheckBoxStyle"
android:layout_below="@+id/thirdQuestion"
android:text="China"
android:onClick="onCheckboxClicked"/>
<CheckBox
android:id="@+id/thirdRightCheckBox"
style="@style/CheckBoxStyle"
android:layout_below="@+id/thirdQuestion"
android:layout_toRightOf="@+id/thirdLeftCheckBox"
android:text="Thailand"
android:onClick="onCheckboxClicked"/>
<TextView
android:id="@+id/fourthQuestion"
style="@style/QuestionsStyle"
android:layout_below="@+id/thirdLeftCheckBox"
android:text="Who was the most famous exemplar of absolute monarchy in France?"/>
<CheckBox
android:id="@+id/fourthLeftCheckBox"
style="@style/CheckBoxStyle"
android:layout_below="@+id/fourthQuestion"
android:text="Louis XIV"
android:onClick="onCheckboxClicked"/>
<CheckBox
android:id="@+id/fourthRightCheckBox"
style="@style/CheckBoxStyle"
android:layout_below="@+id/fourthQuestion"
android:layout_toRightOf="@+id/fourthLeftCheckBox"
android:text="Michael I"
android:onClick="onCheckboxClicked"/>
<TextView
android:id="@+id/fifthQuestion"
style="@style/QuestionsStyle"
android:layout_below="@+id/fourthLeftCheckBox"
android:text="When Alexander The Great lived?"/>
<CheckBox
android:id="@+id/fifthLeftCheckBox"
style="@style/CheckBoxStyle"
android:layout_below="@+id/fifthQuestion"
android:text="330-323 BC"
android:onClick="onCheckboxClicked"/>
<CheckBox
android:id="@+id/fifthRightCheckBox"
style="@style/CheckBoxStyle"
android:layout_below="@+id/fifthQuestion"
android:layout_toRightOf="@+id/fifthLeftCheckBox"
android:text="336-323 BC"
android:onClick="onCheckboxClicked"/>
<TextView
android:id="@+id/sixthQuestion"
style="@style/QuestionsStyle"
android:layout_below="@+id/fifthLeftCheckBox"
android:text="Where Albert Einstein studied?"/>
<CheckBox
android:id="@+id/sixthLeftCheckBox"
style="@style/CheckBoxStyle"
android:layout_below="@+id/sixthQuestion"
android:text="University of Zurich"
android:onClick="onCheckboxClicked"/>
<CheckBox
android:id="@+id/sixthRightCheckBox"
style="@style/CheckBoxStyle"
android:layout_below="@+id/sixthQuestion"
android:layout_toRightOf="@+id/sixthLeftCheckBox"
android:text="University of Germany"
android:onClick="onCheckboxClicked"/>
<TextView
android:id="@+id/seventhQuestion"
style="@style/QuestionsStyle"
android:layout_below="@+id/sixthLeftCheckBox"
android:text="What was the main interest of Democritus?"/>
<RadioGroup
android:id="@+id/radioButtons"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/seventhQuestion"
android:orientation="vertical">
<RadioButton
android:id="@+id/astronomyRadioButton"
style="@style/CheckBoxStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Mathematics-Astronomy"
android:onClick="onRadioButtonClicked"/>
<RadioButton
android:id="@+id/philosophyRadioButton"
style="@style/CheckBoxStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Philosophy-Psychology"
android:onClick="onRadioButtonClicked"/>
</RadioGroup>
<Button
android:id="@+id/submit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/radioButtons"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:background="@color/backgroundColor"
android:text="Submit"
android:textColor="@color/textColor"
android:onClick="submitButton"/>
</RelativeLayout>
</ScrollView>`enter code here`
Hallo Luca, Vielen Dank für Ihre Antwort. Ich versuche zu tun, was Sie vorschlagen, aber App-Crash. es ist mein Schlechter, aber ich finde nicht was. Hier ist mein Code wieder nach Änderung (ich ändern einige nur um es zu versuchen) – elZ
Update mit Ihrem Code & Fehlerprotokoll, ich werde helfen, herauszufinden, was das Problem ist –
Nein, nein, bitte, aktualisieren Sie Ihre Frage mit dem formatierten Code. Ich kann Code nicht so lesen. –