сбой приложений при нажатии на элемент списка - PullRequest
0 голосов
/ 09 марта 2011

Я работаю над приложением, которое показывает все контакты в виде списка, теперь я хочу отредактировать контакты, я написал код для события setOnItemClickListener, чтобы получить контактные данные. Я написал следующий код. Мое приложение аварийно завершает работу всякий раз, когда я нажимаю на элемент списка, пожалуйста, помогите мне. Пожалуйста, сообщите мне, что нужно сделать, чтобы обновить контактную информацию. Если я двигаюсь в неправильном направлении, направьте меня.

код:

super.onCreate(savedInstanceState);
        setContentView(R.layout.main); 
        lv=(ListView)findViewById(R.id.listview);
        TVContactText=(TextView)findViewById(R.id.contactEntryText);
        btnAddContact=(Button)findViewById(R.id.addContactButton);

        ArrayList<String> names = new ArrayList<String>();

        cur=getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
        int a=cur.getCount();
        if(cur.moveToFirst())
        {
        do{
            int nameidx=cur.getColumnIndex(PhoneLookup.DISPLAY_NAME);
                int Ididx=cur.getColumnIndex(PhoneLookup.NUMBER);
            String strName=cur.getString(nameidx);
            names.add(strName);                 
           }while(cur.moveToNext());

        cur.close();
        ArrayAdapter<String> adapter=new ArrayAdapter<String>(this, R.layout.list_view_item_new, R.id.contactEntryText,names);
        lv.setAdapter(adapter); 
        registerForContextMenu(lv);
        } 
       btnAddContact.setOnClickListener(new View.OnClickListener()
       {
           public void onClick(View v)
          {
              launchContactAdder();
            }
       });
          //i want to get info regarding contact..
       lv.setOnItemClickListener(new OnItemClickListener() 
       {          
        public void onItemClick(AdapterView<?> parent, View view, int position, long id)
        {           
            ContactAt(position);  

         }   
        }); 

    }

но мое приложение падает, когда я нажимаю на элемент списка, пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 09 марта 2011

Вот объяснение, как использовать ArrayAdapter:

http://sudarmuthu.com/blog/using-arrayadapter-and-listview-in-android-applications

Как вы можете видеть, вы можете использовать getItem (position) для получения элемента, для которого было зарегистрировано событие click.

...