好心地幫助我調試或找到解決方案來解決我遇到的問題。 我在這裏要做的是,讀取數據庫中的表中的所有值一個 遊標對象。在Android上的EditText中顯示由光標在EditText中返回的結果集
然後對於一個特定的列,即UID(這是一個外鍵),我想顯示所有的多個行條目。 (比較UID cur.getString(3))
我用下面的代碼來顯示在TextView中的結果,但有一些延遲,我遇到了 。
一旦這個活動被調用,結果集並沒有被顯示,但是在幾次重新登錄嘗試後,它運行正常。 (我的應用程序有一個登錄表單)
因此,我決定使用一個TextView,可以顯示結果集點擊一個按鈕,但是當我點擊按鈕時,活動崩潰。
package com.androidarun.mobilewallet;
import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class DisplayCCards extends Creditcard_Registration {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.creditcards_ui);
final EditText view = (EditText) findViewById(R.id.displayarea);
final StringBuilder ret = new StringBuilder(1000);
final MyDBAdapter db = new MyDBAdapter(getBaseContext());
Button showcc = (Button) findViewById(R.id.showcc);
showcc.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Cursor cur = db.getAllCards();
cur.moveToFirst();
while (cur.isAfterLast() == false) {
if (Integer.parseInt(cur.getString(3))== UID)
ret.append("Credit card number: " + cur.getString(1) + " \n" +
" CVV : " + cur.getString(2)+ " \n " + " Validity : " + cur.getString(4)+ " \n ");
cur.moveToNext();
}
cur.close();
db.close();
view.setText(ret);
}
});
你有墜機任何日誌? – MByD 2011-03-14 11:38:49
你可以告訴你從logcat登錄崩潰的條目 – 2011-03-14 11:49:02
不,我沒有做過 – Arun 2011-03-14 12:13:39