I am trying to develop an application similar to phone book. I have 
displayed contacts using listview also upon clicking them I can get the 
contact details. I can search the contact also. Now if I search a contact 
and click on it , wrong data is getting displayed. I have attached all the 
files related to it.

-- 
You received this message because you are subscribed to the Google Groups 
"Android Discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/android-discuss.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/android-discuss/63712855-5822-42ee-9afd-6aac6724d56b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
package com.example.contactmanager;
import DTO.DD;
import Dao.Contact;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.Spinner;
import android.widget.Toast;
public class Addcontacts extends Activity {
EditText t1,t2,t3,t4,t5;
int x=0;
	 @Override
	    protected void onCreate(Bundle savedInstanceState) {
	        super.onCreate(savedInstanceState);
	        setContentView(R.layout.add_contact);
	        initView();
	 }
	 private void initView()
		{
			t1=(EditText)findViewById(R.id.name1);
			t2=(EditText)findViewById(R.id.phone1);
			t3=(EditText)findViewById(R.id.email1);
			t4=(EditText)findViewById(R.id.street1);
			t5=(EditText)findViewById(R.id.note1);
		}
	 public void submit(View v){
		 if(t1.getText().toString().equals("") && t2.getText().toString().equals("") && t3.getText().toString().equals("") && t4.getText().toString().equals("") && t5.getText().toString().equals(""))
		 {
			 Toast.makeText(this, "Please enter something ", 10000).show();
		 }
		 else
		 {
		 int x=1;
			int yy = (int) System.currentTimeMillis();
	     		/*DD d2=new DD();
				d2.setName(c_name);
				d2.setPhone(a1);
				d2.setEmail(a2);
				d2.setAdr(a3);
				d2.setNote(a4);*/
				Contact qd=new Contact(this);
				qd.openCon();
			//Cursor c = null;
					Cursor c = qd.getAllContacts();
				if( c.moveToFirst() )
				{
					String c_name=t1.getText().toString();
					String a1=t2.getText().toString();
					String a2=t3.getText().toString();
					String a3=t4.getText().toString();
					String a4=t5.getText().toString();
					do
			    	   {
			    		   x++;
			    	   } 
			    	   while(c.moveToNext());
					
					{
					if(qd.insert(yy,c_name,a1,a2,a3,a4)>0)
					Toast.makeText(this, "Saved ", 10000).show();
					}
					/*Intent in=new Intent(Addcontacts.this,MainActivity.class);
					startActivity(in);*/
					finish();
				}
				else
				{String c_name=t1.getText().toString();
				String a1=t2.getText().toString();
				String a2=t3.getText().toString();
				String a3=t4.getText().toString();
				String a4=t5.getText().toString();
				if(qd.insert(yy,c_name,a1,a2,a3,a4)>0)
					Toast.makeText(this, "Saved ", 10000).show();
				}
				qd.closeCon();
				
				/*Intent in=new Intent(Addcontacts.this,MainActivity.class);
				startActivity(in);*/	
			finish();
		 }
		}
	 
	 
	 @Override
		protected void onPause() {
			super.onPause();
			Intent in=new Intent(Addcontacts.this,MainActivity.class);
			startActivity(in);
			finish();
		}
	 
	 
	 @Override
		protected void onStop() {
			super.onStop();		
			
	 }
	 
	 
	 @Override
		protected void onDestroy() {
			super.onDestroy();
		}
}

Attachment: add_contact.xml
Description: XML document

/*import java.util.ArrayList;
import java.util.HashMap;

import android.content.Context;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ListView;

public class PatientList extends Activity{

PatientDB patientDB;
Context myContext;
ListView lv_patients;    
EditText et_patients;
ArrayAdapter<String> adapter;   
ArrayList<HashMap<String, String>> patientList;
static String value;
String[] patientarray = new String[]{"initials"};
ArrayList<String> patientArrayList = new ArrayList<String>();

protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_patient_list);

    myContext = this;
    patientDB = new PatientDB(myContext);
    patientDB.open();

    Cursor patientCursor;

    patientCursor = patientDB.retrieveAllEntriesCursor();

    if(patientCursor!=null && patientCursor.getCount()>0)
    {
        String patientInitials;

        patientCursor.moveToFirst();
        do 
        {
            patientCursor.getString(patientDB.COLUMN_KEY_ID); // + " " + 
            patientInitials = patientCursor.getString(patientDB.COLUMN_INITIALS_ID);
            Log.i("FromCursor", patientInitials);
            patientArrayList.add(patientInitials);
        } while (patientCursor.moveToNext());
    }

    lv_patients = (ListView) findViewById(R.id.lv_patients);
    et_patients = (EditText) findViewById(R.id.et_patients);

    lv_patients.setOnItemClickListener(new OnItemClickListener() {

        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            // TODO Auto-generated method stub
            String a = patientArrayList.get(position);
            Toast.makeText(PatientList.this, a + " selected", Toast.LENGTH_SHORT).show();               
            Intent returnIntent = new Intent(PatientList.this, PatientInfo.class);
            returnIntent.putExtra("value", a);
            setResult(RESULT_OK, returnIntent);  
            finish();
        }
    });

    //Adding items to listview
    adapter = new ArrayAdapter<String>(this, R.layout.list_patients, R.id.patient_name, patientArrayList);
    lv_patients.setAdapter(adapter);

    //Enabling search filter
    et_patients.addTextChangedListener(new TextWatcher() {

        public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) {
            // When user changed the Text
            PatientList.this.adapter.getFilter().filter(cs);
        }

        public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
            // TODO Auto-generated method stub

        }

        public void afterTextChanged(Editable arg0) {
            // TODO Auto-generated method stub

        }
    });
}*/

Attachment: activity_main.xml
Description: XML document

Attachment: activity_main_actions.xml
Description: XML document

package Dao;


import DTO.DD;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;


public class Contact {
private static final String  ROW="id";
private static final String  NAME="name";
private static final String  PHONE="phone";
private static final String  EMAIL="email";
private static final String  ADDRESS="adr";
private static final String  NOTE="note";


private static final int  VERSION=1;
private static final String  DATABASE="contact.db";//ducat
private static final String  TABLE="address";//javadata

private static final String  CREATE="create table address (id integer , name varchar(20)," +
		"phone varchar(20),email varchar(20),adr varchar(150),note varchar(200));";

Helper h;
SQLiteDatabase sd;
private String whereClause;
public Contact(Context context){
	h=new Helper(context);
}


public void openCon(){
	sd=h.getWritableDatabase();
}
public void closeCon(){
	sd.close();
}
public long insert(long id, String name,String phone,String email,String adr,String note){
	ContentValues c=new ContentValues();
	c.put(ROW,id);
	c.put(NAME,name);
	c.put(PHONE,phone);
	c.put(EMAIL,email);
	c.put(ADDRESS,adr);
	c.put(NOTE,note);
	return sd.insert(TABLE, null, c);
}
/*String name,String phone,String email,String adr,String note NAME="name";
private static final String  PHONE="phone";
private static final String  EMAIL="email";
private static final String  ADDRESS="adr";
private static final String  NOTE="note";
*/
/*public boolean update(long id,String name,String phone,String email,String adr,String note ){
	ContentValues c=new ContentValues();
	c.put(ROW,id);
	c.put(NAME,name);
	c.put(PHONE,phone);
	c.put(EMAIL,email);
	c.put(ADDRESS,adr);
	c.put(NOTE,note);
//	return sd.update(TABLE, c, ROW + "=" + id, null);
	return sd.update(TABLE, c, "id=?", null) > 0;*/

public long deleted(){
	return sd.delete(TABLE, "id not in (select max(id) from address group by name,phone,email,adr,note)", null);
	
}
/*ROW="id";
private static final String  NAME="name";
private static final String  PHONE="phone";
private static final String  EMAIL="email";
private static final String  ADDRESS="adr";
private static final String  NOTE="note";*/

	public int updatecc(long k, String name, String phone, String email, String adr, String note) 
    {
		 Log.e("****************", "hello" + k);
    ContentValues c=new ContentValues();
	c.put(NAME,name);
	c.put(PHONE,phone);
	c.put(EMAIL,email);
	c.put(ADDRESS,adr);
	c.put(NOTE,note);
	return sd.update(TABLE, c, ROW + "=" + k , null) ;
    }
public boolean deleteCon(int k){
	return sd.delete(TABLE, ROW + "=" + k, null) > 0;
	//return sd.delete(TABLE, "name = ? ",new String[]{name})>0 ;
	//sd.delete(TABLE, NAME + "=" + n,PHONE + "=" + p,EMAIL + "=" + e, ADDRESS + "=" + a, NOTE + "=" + not, null)>0 
	
}/*
public long delete(String email){
	return sd.delete(TABLE, "email=? ", new String[]{email});
	
}*/
public Cursor getAllContacts() 
{
	return sd.query(TABLE,new String[]{ROW,NAME,PHONE,EMAIL,ADDRESS,NOTE}, null, null, null, null, "name asc", null);	
}
private class Helper extends SQLiteOpenHelper
{
	public Helper(Context context) {
		super(context, DATABASE, null, VERSION);
	}	@Override
	public void onCreate(SQLiteDatabase db) {
	db.execSQL(CREATE);
	 }
	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
		//do some stubs for upgrading..
	}
  }
}
package DTO;

public class DD {
	private String name;
	private String phone;
	private String email;
	private String adr;
	private String note;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getPhone() {
		return phone;
	}
	public void setPhone(String phone) {
		this.phone = phone;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public String getAdr() {
		return adr;
	}
	public void setAdr(String adr) {
		this.adr = adr;
	}
	public String getNote() {
		return note;
	}
	public void setNote(String note) {
		this.note = note;
	}
	
		
	
@Override
public String toString() {
	// TODO Auto-generated method stub
	return name ;
			
}
	
}

Attachment: edit_cont.xml
Description: XML document

package com.example.contactmanager;
import Dao.Contact;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
public class EditContact extends Activity  {
	int i=0 , id ;
	EditText t1,t2,t3,t4,t5;
	@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.edit_cont);
        
        int id = getIntent().getExtras().getInt("ContactID");
        Log.e("****************", "5" + id);
        initView();
        Contact d=new Contact(this);
        d.openCon();
       Cursor c = d.getAllContacts();
      /* int pt = Integer.parseInt(c.getString(0));
       Toast.makeText(this, "delete successfull" + pt, 10000).show();*/
      /* t1.setText(c.getString(1));
       t2.setText(c.getString(2));
       t3.setText(c.getString(3));
       t4.setText(c.getString(4));
       t5.setText(c.getString(5));*/
     if( c.moveToFirst() && id==0)
       {
    	  t1.setText(c.getString(1));
          t2.setText(c.getString(2));
          t3.setText(c.getString(3));
          t4.setText(c.getString(4));
          t5.setText(c.getString(5));
       }
      else
      {
    	  do
    	   {
    		   i++;
    	   }while(c.moveToNext() && i<id);
       }
       t1.setText(c.getString(1));
       t2.setText(c.getString(2));
       t3.setText(c.getString(3));
       t4.setText(c.getString(4));
       t5.setText(c.getString(5));
       d.closeCon();
	}       
public void save2(View v)
{
	int id = getIntent().getExtras().getInt("ContactID");
	initView();
	int i=0;
		Contact qd=new Contact(this);
		qd.openCon();
		Cursor c = qd.getAllContacts();
				if( c.moveToFirst() && id==0)
	       {
			int j =id+1;
			int pt = Integer.parseInt(c.getString(0));
			String c_name=t1.getText().toString();
			String a1=t2.getText().toString();
			String a2=t3.getText().toString();
			String a3=t4.getText().toString();
			String a4=t5.getText().toString();
			if(qd.updatecc(pt, c_name, a1, a2, a3, a4)>0)//id starts with 0 but in db id starts with 1
				Toast.makeText(this, "update successfull", 10000).show();
			}
	      else
	      {
	    	  while(i<id)
	    	  {
	    		  c.moveToNext();
	    		  i++;
	    	  }
	    	  int pt = Integer.parseInt(c.getString(0));
	    	  String c_name=t1.getText().toString();
				String a1=t2.getText().toString();
				String a2=t3.getText().toString();
				String a3=t4.getText().toString();
				String a4=t5.getText().toString();
				int k = i+1;
		//		Toast.makeText(this,c.getString(1), 10000).show();
				if(qd.updatecc(pt,c_name, a1,a2,a3,a4)>0)
				Toast.makeText(this, "update successfull", 10000).show();
	      }
		qd.closeCon();
		finish();
		
		/*Intent in=new Intent(this,MainActivity.class);
		startActivity(in);
		*/
}
public void delete(View v){
	int id = getIntent().getExtras().getInt("ContactID");
	initView();
	int i=0;
		Contact qd=new Contact(this);
		qd.openCon();
		Cursor c = qd.getAllContacts();
				if( c.moveToFirst() && id==0)
	       {
			int j =id+1;
			int pt = Integer.parseInt(c.getString(0));
			String c_name=t1.getText().toString();
			String a1=t2.getText().toString();
			String a2=t3.getText().toString();
			String a3=t4.getText().toString();
			String a4=t5.getText().toString();
			if(qd.deleteCon(pt))
				Toast.makeText(this, "deleted", 10000).show();
			/*if(qd.updatecc(pt, c_name, a1, a2, a3, a4)>0)//id starts with 0 but in db id starts with 1
				Toast.makeText(this, "update successfull", 10000).show();*/
			}
	      else
	      {
	    	  while(i<id)
	    	  {
	    		  c.moveToNext();
	    		  i++;
	    	  }
	    	  int pt = Integer.parseInt(c.getString(0));
	    	  String c_name=t1.getText().toString();
				String a1=t2.getText().toString();
				String a2=t3.getText().toString();
				String a3=t4.getText().toString();
				String a4=t5.getText().toString();
				int k = i+1;
				//Toast.makeText(this,c.getString(1), 10000).show();
				if(qd.deleteCon(pt))
				Toast.makeText(this, "deleted", 10000).show();
	      }
		qd.closeCon();
		finish();
		/*Intent in=new Intent(this,MainActivity.class);
		startActivity(in);
		finish();*/
		//why given below code didn't work ?
	/*initView();
	int id = getIntent().getExtras().getInt("ContactID");
	 Log.e("****************", "5" + id);
	 Contact d=new Contact(this);
     d.openCon();
	 Cursor c = d.getAllContacts();
	 if( c.moveToFirst() && id==0)
     {
  	  t1.setText(c.getString(1));
        t2.setText(c.getString(2));
        t3.setText(c.getString(3));
        t4.setText(c.getString(4));
        t5.setText(c.getString(5));
     }
    else
    {
  	  do
  	   {
  		   i++;
  	   }while(c.moveToNext() && i<id);
     }
	 c.moveToFirst();
	 Log.e("****************", "5" + i);
	 while(i<id )
	 {
		 c.moveToNext();
		 i=i+1;
		// int pt = Integer.parseInt(c.getString(0));
	 }
	 if( c.moveToFirst())
     {
  	   do
  	   {
  		   i=i+1;
  	   }while( c.moveToNext() && i<id);
     }
       
        int x= pt + 1;
	 String ptr = c.getString(1);
	String c_name=t1.getText().toString();
	String a1=t2.getText().toString();
	String a2=t3.getText().toString();
	String a3=t4.getText().toString();
	String a4=t5.getText().toString();
	Toast.makeText(this, ptr, 10000).show();
	//Toast.makeText(this, "delete successfull" + pt, 10000).show();
	//if(d.deleteCon(pt))
	//Toast.makeText(this, "delete successfull", 10000).show();
	d.closeCon();
	Intent in=new Intent(this,MainActivity.class);
	startActivity(in);
	finish();*/												
}
	private void initView()
	{
		t1=(EditText)findViewById(R.id.name2);
		t2=(EditText)findViewById(R.id.phone2);
		t3=(EditText)findViewById(R.id.email2);
		t4=(EditText)findViewById(R.id.street2);
		t5=(EditText)findViewById(R.id.note2);
		}
	
	@Override
		protected void onPause() {
			super.onPause();
			Intent in=new Intent(this,MainActivity.class);
			startActivity(in);
			finish();
		}
	
}

Attachment: main.xml
Description: XML document

package com.example.contactmanager;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.security.PrivateKey;
import java.util.ArrayList;
import DTO.DD;
import Dao.Contact;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.provider.ContactsContract;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.CursorLoader;
import android.content.Intent;
import android.content.res.AssetFileDescriptor;
import android.database.Cursor;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.CursorAdapter;
import android.widget.EditText;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;

public class MainActivity extends Activity{
	 ListView lv;
	  EditText inputSearch;
	  ArrayAdapter<String> adapter;
	  String vfile;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       ListView  lv=(ListView)findViewById(R.id.listView1);
     //  ListView  lv1=(ListView)findViewById(R.id.listView1);
         inputSearch = (EditText) findViewById(R.id.inputSearch);
         Contact d=new Contact(this);
	        d.openCon();
	        Cursor c=d.getAllContacts();
	        ArrayList a=new ArrayList();
	        while(c.moveToNext()){
	        	DD d1=new DD();
	        	d1.setName(c.getString(1));
	        	a.add(d1);
	        }
	       
	      adapter=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, a);
	        lv.setAdapter(adapter);
	       lv.setOnItemClickListener(new OnItemClickListener() {
	        	@Override
	    		public void onItemClick(AdapterView<?> arg0, View arg1, int position,
	    				long arg3) { 
	        			        		Intent in = new Intent(getApplicationContext() , EditContact.class);
	    			//Intent in = new Intent ("com.example.EditContact");
	    			//Toast.makeText(getApplicationContext(), "" + a , 10000).show();
	    		in.putExtra("ContactID", position);
	    			startActivity(in);
	    			finish();
	    		}
	        });
	        d.closeCon();
	        inputSearch.addTextChangedListener(new TextWatcher() {
	    	   	@Override
	    	    		public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
	    	    			// TODO Auto-generated method stub
	    	    			adapter.getFilter().filter(arg0);
	    	    		}
	    	  		@Override
	    	    		public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
	    	    				int arg3) {
	    	    			// TODO Auto-generated method stub
	    	    			   		}
	    	    		@Override
	    	    		public void afterTextChanged(Editable arg0) {
	    	    			// TODO Auto-generated method stub
	    	    			}
	    	    	})  ;
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.activity_main_actions, menu);
        return super.onCreateOptionsMenu(menu);
    }    
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Take appropriate action for each action item click
        switch (item.getItemId()) {
        case R.id.add_contact:
        	Addcontact();
            return true;
               case R.id.importcontact:
            	   final ProgressDialog dialog = ProgressDialog.show(
            				this, "Doing something", "Please wait...", true);
            	    new Thread(new Runnable(){
            		    public void run(){
            			    try {
            			    	//---simulate doing something lengthy---
            			        Thread.sleep(500);
            			        //---dismiss the dialog---
            					dialog.dismiss();
            				} catch (InterruptedException e) {					
            				    e.printStackTrace();
            				}		
            			}
            		}).start();
                	Importcontact();
            return true;
            /* case R.id.exportcontact:*/
            //Export code
        	 

          //  return true;
        case R.id.removediplicate:
          //remove duplicate
        	
        	Contact d=new Contact(this);
        	d.openCon();
        	Cursor c = d.getAllContacts();
        	final ProgressDialog dialog1 = ProgressDialog.show(
    				this, "Doing something", "Please wait...", true);
    		    new Thread(new Runnable(){
    			    public void run(){
    				    try {
    				    	//---simulate doing something lengthy---
    				        Thread.sleep(500);
    				        //---dismiss the dialog---
    						dialog1.dismiss();
    					} catch (InterruptedException e) {					
    					    e.printStackTrace();
    					}		
    				}
    			}).start();
          if( d.deleted()>0)
				Toast.makeText(this, "duplicates removed", 10000).show();
           d.closeCon();
           Intent i = new Intent( getApplicationContext(), MainActivity.class);
           startActivity(i);
           finish();
            return true;
        default:
            return super.onOptionsItemSelected(item);
        }
    }
	private void Importcontact()
	{
		 Uri allContacts = ContactsContract.Contacts.CONTENT_URI;
        Cursor c1;
        if (android.os.Build.VERSION.SDK_INT <11) {
        	//---before Honeycomb---
            c1 = managedQuery(allContacts, null, 
                    null,
                    null, null);   
        } else {
        	//---Honeycomb and later---
            CursorLoader cursorLoader = new CursorLoader(
            		this, 
            		allContacts, 
            		null, 
                   null,
                    null,null);
            c1 = cursorLoader.loadInBackground(); 
        }
		 
        Contact d=new Contact(this);
        d.openCon();
		if (c1.moveToFirst()) {
       do{
    	      	   String contactID = 
                   c1.getString(c1.getColumnIndex(
                       ContactsContract.Contacts._ID));
    	             String contactDisplayName = 
                  c1.getString(c1.getColumnIndex(
                      ContactsContract.Contacts.DISPLAY_NAME));
    	             String hasPhone = c1.getString(c1.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER)); 
    	             if ((Integer.parseInt(hasPhone)==1 ))
    	             { 
                    	 Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, 
                    	 null, 
                    	 ContactsContract.CommonDataKinds.Phone.CONTACT_ID +" = "+ contactID, 
                    	 null, null); 
                    	while (phones.moveToNext()) 
                    	 { 
           	             int yy = (int) System.currentTimeMillis();
                    	String number = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
                    	if(d.insert(yy,contactDisplayName,number ,null,null,null)>0);
                    	 } 
                    	 phones.close();
                    	 } 
                      }
       while (c1.moveToNext());
         }
		d.closeCon(); 
		Intent i = new Intent( getApplicationContext(), MainActivity.class);
        startActivity(i);
        finish();
}
private void Addcontact() {
	 final ProgressDialog dialog = ProgressDialog.show(
				this, "Doing something", "Please wait...", true);
		    new Thread(new Runnable(){
			    public void run(){
				    try {
				    	//---simulate doing something lengthy---
				        Thread.sleep(500);
				        //---dismiss the dialog---
						dialog.dismiss();
					} catch (InterruptedException e) {					
					    e.printStackTrace();
					}		
				}
			}).start();
        Intent i = new Intent(MainActivity.this, Addcontacts.class);
        startActivityForResult(i,1);
       finish();
    }
}
Filter in android is taking the wrong position

I am trying to develop an application similar to phone book. I have displayed 
contacts using listview also upon clicking them I can get the contact details. 
I can search the contact also. Now if I search a contact and click on it , 
wrong data is getting displayed. I have attached all the files related to it.

Reply via email to