我似乎從數據庫中爲列id#返回一個值,但我想要我已經定義的列的實際文本值。Android:將數據庫中的值傳遞給contsant /變量
我有定義爲ID_COLUMN_TITLE字符串,這是在我試圖通過該柱
public final static String ID_COLUMN_TITLE = "com.pocketbeta.COLUMN_TITLE";
的COLUMN_TITLE值由數據庫在不同的片段的填充串.:的值代碼:
public static final String COLUMN_TITLE = "route_name";
接下來,我設置了轉接器和監聽器,並把它傳遞給活動:
private AdapterView.OnItemClickListener onListClick = new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent i=new Intent(SmithRockNameDatabase.this, DatabaseChoice.class);
i.putExtra(ID_COLUMN_TITLE, String.valueOf(id));
startActivity(i);
}
};
那麼新的活動顯示結果:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.databasechoice);
passedVar=getIntent().getStringExtra(SmithRockNameDatabase.ID_COLUMN_TITLE);
passedView=(TextView)findViewById(R.id.passed);
passedView.setText(passedVar);
}
一切工作,只是它顯示的列ID,而不是因爲我想列標題的實際值。任何人都可以告訴我我錯過了什麼嗎?
如果您在ClickListener中記錄id的值,您會得到正確的輸出嗎? – johan
您正在將valueOf(id)放入鍵ID_COLUMN_TITLE中。你會得到的是valueOF(id)。那是你要的嗎?或者你想ID_COLUMN_TITLE? – Urban
是的,我發現後,我認識到從valueOf(id)傳遞了id。我試圖傳遞其中一個列條目的值。因此,例如,我試圖在數據庫中名爲「route_name」的列中傳遞1個條目的值。 – Adam