在我的应用程序中我想在TextView上显示我的数据库的值。 但在更新我的数据库(方法“更改”)后,我在TextView中得到了一些奇怪的代码而不是正常的值。 这是我的代码:
newPreis = (EditText)findViewById(R.id.editTextPreis);
newHerkunft = (EditText)findViewById(R.id.editTextHerkunft);
public void changeDatabase(View view) {
String pNeu = newPreis.toString();
String hNeu = newHerkunft.toString();
db.execSQL("UPDATE DATEN SET preis='"+pNeu+"' WHERE _id=1");
db.execSQL("UPDATE DATEN SET herkunft='"+hNeu+"' WHERE _id=1");
}
// anzeigeApfel is a TextView
if(pApfel.moveToFirst() && hApfel.moveToFirst()) {
String prApfel = pApfel.getString(pApfel.getColumnIndex("preis"));
String herApfel = hApfel.getString(hApfel.getColumnIndex("herkunft"));
anzeigeApfel.setVisibility(View.VISIBLE);
anzeigeApfel.setText("" + prApfel + "\n" + herApfel);
}
答案 0 :(得分:0)
奇怪的代码是因为您使用的是EditText
toString
方法,而不是检索EditText
所持有的值。
您使用EditText
方法获取getText
所持有的值,然后需要使用String
的toString将其转换为Text
方法
所以而不是: -
String pNeu = newPreis.toString();
String hNeu = newHerkunft.toString();
你应该使用: -
String pNeu = newPreis.getText().toString();
String hNeu = newHerkunft.getText().toString();