0

データベースへのアイテムの挿入に問題があります。ListView に 6 つの項目があり、そのためのデータベースを作成しました。データベースに挿入する特定のアイテムをクリックすると、特定のアイテムの代わりに 6 つのアイテムが挿入されます。私はそれが私の挿入コードに関係していると感じています。

以下は、データベースのテーブルにアイテムを挿入するための挿入コードです。

@Override
    public void onListItemClick(ListView l, View v, int position, long id)
    {
        buddyDB.open();
        long _id;
        super.onListItemClick(l, v, position, id);

        Cursor c = ((SimpleCursorAdapter)l.getAdapter()).getCursor();
        c.moveToPosition(position);

        /*TextView contactName = (TextView) findViewById(R.id.contactName);
        String NameValue = contactName.getText().toString(); 

        TextView contactNameTwo = (TextView) findViewById(R.id.contactName);
        String NameValueTwo  = contactName.getText().toString();

        TextView contactNameThree = (TextView) findViewById(R.id.contactName);
        String NameValueThree = contactName.getText().toString();

        TextView contactNameFour = (TextView) findViewById(R.id.contactName);
        String NameValueFour = contactName.getText().toString();

        TextView contactNameFive= (TextView) findViewById(R.id.contactName);
        String NameValueFive = contactName.getText().toString();

        TextView contactNameSix = (TextView) findViewById(R.id.contactName);
        String NameValueSix = contactName.getText().toString();*/

        Toast.makeText(getBaseContext(), 
                "Selected: " + buddiesList[position], Toast.LENGTH_SHORT).show();

        _id = buddyDB.insertContact("Kanak Priya");
        _id = buddyDB.insertContact("Joanne Liew");
         _id = buddyDB.insertContact("Michelle Lam");
        _id = buddyDB.insertContact("Melissa Haiting");
        _id = buddyDB.insertContact("Teo Kin Hua");
        _id = buddyDB.insertContact("David Yeo");

        buddyDB.close();    

        Intent i = new Intent(context, PersonalInfo.class);
        startActivity(i);
    }

どんな助けでも大歓迎です。=)

4

3 に答える 3

0

次の 6 行を挿入します。

_id = buddyDB.insertContact("Kanak Priya");
    _id = buddyDB.insertContact("Joanne Liew");
     _id = buddyDB.insertContact("Michelle Lam");
    _id = buddyDB.insertContact("Melissa Haiting");
    _id = buddyDB.insertContact("Teo Kin Hua");
    _id = buddyDB.insertContact("David Yeo");
于 2012-08-01T08:18:44.543 に答える
0

問題は、いずれかのリスト項目をクリックするたびに 6 つの項目を挿入していることです。

onListItemClick では、データベースに挿入する前に、クリックした連絡先を確認する必要があります。

例えば:

_id = buddyDB.insertContact(NameValue);

コードにある 6 つの挿入ステートメントを削除します。

于 2012-08-01T08:27:50.463 に答える
0

「onListItemClick」内でこれを試してください。

 TextView contactName = (TextView) v.findViewById(R.id.contactName);
 String NameValue = contactName.getText().toString(); 
 id = buddyDB.insertContact(NameValue);

ここで、v = View、onListItemClick のパラメーター

于 2012-08-01T08:41:57.690 に答える