0
是否有一種簡單的方法從微調器獲取用戶的選擇(字符串值)?我試圖避免在它上面設置一個監聽器並編寫一個onItemSelected()方法,因爲當用戶做出選擇時我不需要發生任何事情。相反,我試圖設置一個按鈕單擊來捕獲選擇並將其發送到一個捆綁到另一個活動。我的微調器被一個光標填滿。這裏是我的代碼,它崩潰就行了:從數據庫填充的微調器中獲取用戶(字符串值)選擇的簡單方法?
String choice = this.adapter.getItem(index).toString();
代碼:
public class MainActivity extends BaseActivity
{
static final String TAG = "MainActivity";
static final String[] FROM = {CreateDB.C_CATEGORY};
static final int[] TO = {android.R.id.text1};
CreateDB dbBuilder;
SQLiteDatabase database;
Cursor cursor;
SimpleCursorAdapter adapter;
Spinner spinnerLocal;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
dbBuilder = new CreateDB(this);
database = dbBuilder.getReadableDatabase();
cursor = database.query(CreateDB.TABLE, null, null, null, null, null, CreateDB.C_CATEGORY + " DESC");
startManagingCursor(cursor);
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, android.R.layout.simple_spinner_item, cursor, FROM, TO);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
Spinner spinnerRemote = (Spinner) findViewById(R.id.spinner2);
spinnerRemote.setAdapter(adapter);
}
public void createReview(View view)
{
//createReview runs when a button is clicked
Spinner spinner = (Spinner)findViewById(R.id.spinner2);
int index = spinner.getSelectedItemPosition();
String choice = this.adapter.getItem(index).toString();
Intent postReview = new Intent(this,Post.class);
Bundle bundle = new Bundle();
bundle.putString("CATEGORY", choice);
postReview.putExtras(bundle);
startActivity(postReview);
}
謝謝 - 這是非常有幫助的。 – cmac 2012-03-11 01:00:08