スピナー値をデータベースに保存する方法は?
-
27-10-2019 - |
質問
私はAndroidを初めて使用しています。スピナー値をデータベースに保存しようとしていますが、データベースに保存している間にエラーが発生しています。誰かが私を助けてくれませんか。これが私のコードです、
mGender = (Spinner)findViewById(R.id.spinner1);
String gender = mGender.toString();
values.put("gender", gender);
コードを変更したので、スピナー値を読むことができますが、データベースを確認すると、スピナーに与えられた正確な情報が表示されていないため、次のようなものが表示されています。
android.widget.Spinner@41372738
android.widget.Spinner@41382ae0
同じ値の場合。誰かが私を助けてくれませんか。
前もって感謝します
解決
最後に、さまざまなチュートリアルとサンプルを調べて、この質問に対する答えを見つけました。これの解決策は次のとおりです。
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つのクラス状態。
public class State
{
public String name = "";
public State(String _name)
{
name = _name;
}
public String toString()
{
return name;
}
}
皆さん、ありがとうございました....
他のヒント
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);
所属していません StackOverflow