当点击列表视图项目时,应用程序崩溃

问题描述:

我正在处理显示列表视图中所有联系人的应用程序,现在我想编辑联系人,我在setOnItemClickListener事件上编写了代码,以便我获取联系详细信息。我已经写了下面的代码。我的应用程序崩溃,每当我点击listview项目请帮助我。请指导我该怎么做来更新联系细节。如果我在错误的方向移动,请指导我。当点击列表视图项目时,应用程序崩溃

代码:

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

你能告诉我们日志说什么吗? – bhups 2011-03-09 06:08:31

+0

显然它在* ContactAt()*中崩溃。对不起,重复这一点,你真的需要采取转移和拿起一本关于java和android编程的书。 – Reno 2011-03-09 06:15:47

+1

你可以显示ContactAt方法吗? (btw请注意,此方法名称不遵循java命名约定) – RoflcoptrException 2011-03-09 06:15:56

这里是一个解释如何使用ArrayAdapter:

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

正如你所看到的,你可以使用的getItem(位置)来获取其上注册的点击事件的元素。

+0

喜居然再次我的应用程序崩溃,但这个时候我的代码,一切都right.actually上安装设备之前,我试图在模拟器它后乳宁我做干净的构建,然后再之后构建它,这是第2天我的应用程序不跑它崩溃请指导我。 – Neha 2011-03-11 06:37:01

+0

@Neha。现在它真的崩溃了,或者没有做你想做的事情?当它崩溃,然后重新:张贴您的纪录! – 2011-03-11 11:29:07

+0

其实当我点击特定联系人的没有做任何事情可能是因为的它crashes.so写未来编我想知道如何显示选定联系人的详细信息,有没有原生API,这样我可以在构建接触致电编辑活动,请指导我。 – Neha 2011-03-14 05:28:53