Page kontak menjadi duplicate, sudah constain tetapi tidak berkerja ?

Berikut PageKontak.class
final Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,null,null, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME+" ASC");

        int no=1;
        while (phones.moveToNext())
        {
            String name=phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
            String phoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));

            //PageKontakModel contactModel = new PageKontakModel();
            //contactModel.setName(name);
            //contactModel.setNumber(phoneNumber);
            //contactModelArrayList.add(contactModel);
            Log.d("name>>",name+"  "+phoneNumber);

            if (!arraylist.contains(phoneNumber)) {
                PageKontakModel kt = new PageKontakModel(name, name+"\n"+phoneNumber, phoneNumber);
                // Binds all strings into an array
                arraylist.add(kt);
                no++;
                //mobileNoSet.add(kt);
            }

        }
        phones.close();

        adapter = new PageKontakAdapter(PageKontak.this, arraylist,null,null);

        // Binds the Adapter to the ListView
        listView.setAdapter(adapter);
apakah saya ada kesalahan pada kode ini
if (!arraylist.contains(phoneNumber)) {
                PageKontakModel kt = new PageKontakModel(name, name+"\n"+phoneNumber, phoneNumber);
                // Binds all strings into an array
                arraylist.add(kt);
                no++;
                //mobileNoSet.add(kt);
            }
Ini adalah tampilannya <a href=' https://imgbbb.com/image/Yk10T '> https://imgbbb.com/image/Yk10T </a>
avatar digel

Ditanyakan oleh @digel

6 Kontribusi 1 Poin

Login untuk menanggapi


Jawaban

Itukan yang dicek array yang sama, harusnya bukan add tapi set. Kodenya:
if (!arraylist.contains(phoneNumber)) {
                PageKontakModel kt = new PageKontakModel(name, name+"\n"+phoneNumber, phoneNumber);
                // Binds all strings into an array
                arraylist.set(no - 1, kt); // minus 1 karena array mulai dari nol.
                no++;
                //mobileNoSet.add(kt);
            }
avatar DennyKurniawan

Dijawab oleh @DennyKurniawan

62 Kontribusi 22 Poin

Login untuk menanggapi


Login untuk gabung berdiskusi