so hatte ich eine Version von dieser Arbeit früher. Leider habe ich vergessen, die Arbeitsversion auf meinen USB zu kopieren, also habe ich versucht, dies zu Hause zu kopieren. Ich habe 5 Richtfunkknöpfe. Jedes Mal, wenn eine Option aktiviert ist, soll der Text in einer TextView so geändert werden, dass er der zugehörigen Richtung entspricht. Leider scheint das nicht zu funktionieren. Beim Versuch, die App auszuführen, stürzt sie ab.OnClick-Ereignis für Radio Buttons funktionieren nicht
Der Debugging-Bildschirm wirft auch etwas über Nullzeigerausnahmen aus. Außerdem gibt es im XML-Code für die Optionsfelder etwas über die Methode, die ich anrufe, die nicht in Main gefunden wird. Jede Hilfe wird geschätzt.
<RadioButton
android:text="@string/north"
android:layout_width="79dp"
android:layout_height="wrap_content"
android:layout_marginLeft="12dp"
android:layout_marginStart="12dp"
android:layout_marginTop="29dp"
android:id="@+id/north"
android:onClick="onClick" />
<RadioButton
android:text="@string/south"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/south" />
<RadioButton
android:text="@string/east"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/east" />
<RadioButton
android:text="@string/west"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/west" />
<RadioButton
android:text="@string/center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/center" />
</RadioGroup>
<SeekBar
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="22dp"
android:id="@+id/speed"
android:layout_below="@+id/Speed"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
Aktivität:
public class MainActivity extends AppCompatActivity {
RadioButton n, s, e, w, c;
// TextView text = (TextView)findViewById(R.id.text);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public View.OnClickListener optionOnClickListener;
{
optionOnClickListener = new OnClickListener() {
public View v;
public void onClick(View v) {
this.v = v;
TextView text = (TextView) findViewById(R.id.text);
String str = null;
n = (RadioButton) findViewById(R.id.north);
s = (RadioButton) findViewById(R.id.south);
e = (RadioButton) findViewById(R.id.east);
w = (RadioButton) findViewById(R.id.west);
c = (RadioButton) findViewById(R.id.center);
// you can simply copy the string of clicked button.
str = ((RadioButton) v).getText().toString();
text.setText(str);
// or, you can check each radiobutton and find which one is checked.
if (n.isChecked()) {
text.setText("North");
} else if (s.isChecked()) {
text.setText("South");
} else if (e.isChecked()) {
text.setText("East");
} else if (w.isChecked()) {
text.setText("West");
} else if (c.isChecked()) {
text.setText("Center");
}
}
};
}
}
können Sie den Stack-Trace Ihrer Ausnahme buchen? –
Ich denke, dass Sie in der Lage sein werden, eine Antwort hier http://stackoverflow.com/questions/9748070/radio-group-onclick-event-not-firing-how-do-itel-which-isselected zu finden für Ihre Frage – Shyamali
Eine Frage über eine Radio ** -Gruppe ** wird ihm sagen, warum diese App nicht startet? –