Ich habe eine Schaltfläche erstellt, die beim Klicken öffnet einen AlertDialog für die Eingabe wo Position ist eine globale Variable .. das Problem ist auch nach dem Zuweisen der Variablen Ort einen Wert außerhalb der OnClickListener seine immer noch Null zeigt ...Globale Variable Wert nicht geändert
String location = "";
TextView details;
TextView cityName;
TextView temp;
Button locationInput;
static String tempString = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
details = (TextView) findViewById(R.id.details_field);
cityName = (TextView) findViewById(R.id.city_name);
temp = (TextView) findViewById(R.id.current_temperature_field);
locationInput = (Button) findViewById(R.id.button_location_input);
locationInput.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final AlertDialog.Builder alertDialog = new AlertDialog.Builder(MainActivity.this);
LayoutInflater inflater = MainActivity.this.getLayoutInflater();
View view = inflater.inflate(R.layout.dialog_box,null);
alertDialog.setView(view);
alertDialog.setTitle("Enter the location");
final EditText locationInput = (EditText) view.findViewById(R.id.location_input);
locationInput.setInputType(InputType.TYPE_CLASS_TEXT);
alertDialog.setPositiveButton("Accept", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
location = locationInput.getText().toString();
Log.i("Location",location);
locationInput.setVisibility(View.GONE);
tempString = location;
dialog.dismiss();
}
});
alertDialog.setNegativeButton("Deny", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
AlertDialog create = alertDialog.create();
create.show();
}
});
Haben Sie erklärt den ‚Standort‘ Variable als String & Doe es global deklariert? –
yo done it ... hat das in Frage gestellt .. –
Bitte überprüfen Sie noch einmal, ob editText R.id.location_input im jeweiligen Layout vorhanden ist oder nicht. Überprüfen Sie mit Strg + B. Irgendwann kleine Fehler machen nullpointer Exp –