1

ユーザーの場所(セルブロードキャストの場所コード)を収集し、その場所をユーザーの名前オプションで保存するアプリケーションを作成しています。たとえば、CBの場所コードが546034の場合、アプリでその場所コードを名前で保存できるようになります。私が選んだのは「ホーム」と言います。

つまり、基本的に私のアプリには次のモジュールがあります。

  1. ユーザーのCBロケーションを収集します。
  2. その場所のユーザーからカスタム名を収集します。
  3. これらの値をデータベースに保存します。

上記のすべてのモジュールを実行することに成功しました。

3番目のモジュールのサブモジュールがあり、ユーザーがデータベース値を表示および削除するオプションがあります。スクリーンショットは次のようになります。

ここに画像の説明を入力してください

今、

ユーザーが[場所のデータベースを表示する]オプションを選択すると、エントリを表示および削除できるはずです。データベース値を照会する方法を学び、リストビューの作成と削除オプションの提供に追われています。

データベース値を取得して値をクエリするための私のコードは次のようになります。

submit.setOnClickListener(new View.OnClickListener() 
    {

        public void onClick(View arg0) {

            String locname = name.getText().toString();

            if(locname.length()==0)
            {
                Toast.makeText(getBaseContext(), "Please enter the location     name, for example 'Home'.", Toast.LENGTH_LONG).show();
            }
            else
            {
                SQLiteDatabase cd = openOrCreateDatabase("mydata",    MODE_WORLD_READABLE, null);
                cd.execSQL("CREATE TABLE IF NOT EXISTS MLITable  (CblocationCode INT(10), CblocationName VARCHAR);");
                cd.execSQL("INSERT INTO MLITable VALUES ('"+str+ "','"+locname+ "');");
                cd.close();
                Toast.makeText(getBaseContext(), "value successfully entered.", Toast.LENGTH_LONG).show();
            }
        }
    });

    viewdb.setOnClickListener(new View.OnClickListener() 
    {

        public void onClick(View arg0) {
            // here comes the code for viewing the database and deleting

            SQLiteDatabase db = openOrCreateDatabase("mydata", MODE_WORLD_READABLE, null);
            Cursor c = db.rawQuery("SELECT * FROM MLITble", null);
            db.close();
        }
    });

テーブルの値を読み取ったことはわかりますが、それらの値の表示を作成できません。

ヘルプが必要です。

ありがとうございました。

4

1 に答える 1

0

データベースからデータを取得していますが、それらを表示するコードはありません。データを表示するには、ListViewなどを作成する必要があります。

これを行う方法のチュートリアルは次のとおりです。

http://tausiq.wordpress.com/2012/08/22/android-list-view-from-database-with-cursor-adapter/

于 2012-11-04T10:57:20.870 に答える