更新数据库后的奇怪值

问题描述 投票:-2回答:1

在我的应用程序中,我想在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);
}
java android android-sqlite
1个回答
0
投票

奇怪的代码是因为你使用EditTexttoString方法而不是检索EditText持有的值。

你可以使用EditText方法获得getText所持有的值,然后需要使用String的toString方法将其转换为Text

所以不是: -

    String pNeu = newPreis.toString();
    String hNeu = newHerkunft.toString();

你应该使用: -

    String pNeu = newPreis.getText().toString();
    String hNeu = newHerkunft.getText().toString();
© www.soinside.com 2019 - 2024. All rights reserved.