0

私はアンドロイドが初めてで、スピナーの値をデータベースに保存しようとしていますが、データベースに保存中にエラーが発生しています。誰でも私を助けてください。ここに私のコードがあります、

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

コードを変更したので、スピナーの値を読み取ることができますが、データベースを確認すると、スピナーで指定された正確な情報が表示されず、次のようなものが表示されます

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

同じ値に対して。誰でも私を助けてください。

前もって感謝します

4

2 に答える 2

2

最後に、さまざまなチュートリアルとサンプルを調べて、この質問に対する答えを見つけました。これに対する解決策は次のとおりです。

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

}

スピナーを作成し、onCreate メソッドで値を割り当てる必要があります。スピナー値を読み取るためのもう 1 つのクラス State。

public class State 
{
    public String name = "";


    public State(String _name)
    {

        name = _name;

    }
    public String toString()
    {
        return name;
    }


}

皆さん、ありがとうございました....

于 2012-02-01T05:18:30.700 に答える
0
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);
于 2012-01-12T07:51:36.997 に答える