Frage

Ich bin neu in Android, versuche, den Spinner-Wert in der Datenbank zu speichern, erhalte aber beim Speichern in der Datenbank eine Fehlermeldung.Kann mir bitte jemand helfen? Hier ist mein Code,

mGender = (Spinner)findViewById(R.id.spinner1);
String gender = mGender.toString();
values.put("gender", gender);

Ich habe den Code geändert, damit ich den Spinner-Wert lesen kann, aber wenn ich meine Datenbank überprüfe, werden nicht die genauen Informationen angezeigt, die im Spinner angegeben sind, sondern so etwas wie

android.widget.Spinner@41372738
android.widget.Spinner@41382ae0

für die gleichen Werte.Kann mir bitte jemand helfen.

Danke im Voraus

War es hilfreich?

Lösung

Schließlich fand ich die Antwort auf diese Frage, indem ich die verschiedenen Tutorials und Beispiele durchging.Die Lösung hierfür lautet:

mGender = (Spinner)findViewById(R.id.spinner1);

        // Spinner method to read the on selected value
        ArrayAdapter<State> spinnerArrayAdapter = new ArrayAdapter<State>(this,
                  android.R.layout.simple_spinner_item, new State[] {   
                        new State("Male"), 
                        new State("Female")});
        mGender.setAdapter(spinnerArrayAdapter);
        mGender.setOnItemSelectedListener(this);

public void onItemSelected(AdapterView<?> parent, View view, int position, long id) 
    {
        // Get the currently selected State object from the spinner
        State st = (State)mGender.getSelectedItem();

        // Show it via a toast
        toastState( "onItemSelected", st );
    } 

public void toastState(String name, State st) 
{
    if ( st != null )
    {
        Gen = st.name;
    //Toast.makeText(getBaseContext(), Gen, Toast.LENGTH_SHORT).show();

    }

}

public void onNothingSelected(AdapterView<?> arg0) {
    // TODO Auto-generated method stub

}

Sie müssen einen Spinner erstellen und die Werte in der onCreate-Methode zuweisen.und einen weiteren Klassenstatus zum Lesen der Spinnerwerte.

public class State 
{
    public String name = "";


    public State(String _name)
    {

        name = _name;

    }
    public String toString()
    {
        return name;
    }


}

Vielen Dank an alle ...

Andere Tipps

category =  (Spinner)findViewById(R.id.category_group);  

category_spinner= new ArrayAdapter(this,android.R.layout.simple_dropdown_item_1line,
        getResources().getStringArray(R.array.category_value));
category.setAdapter(category_spinner);

category.setOnItemSelectedListener(new OnItemSelectedListener() {

    @Override
    public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
            long arg3) {

    sppiner_Text= category_spinner.getItem(arg2).toString();

    }

    @Override
    public void onNothingSelected(AdapterView<?> arg0) {
        // TODO Auto-generated method stub

    }
});

 //onSaveButton Click you just insert the value in DB    
  insert(sppiner_Text);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top