2015-04-23 53 views
-2

嗨问题是,选定的数据的出现在列表视图,但实际上,我们想从列表视图中删除数据的检查意味着位置删除如何删除数据从列表视图后检查在Android

任何人可以和我们一起解决问题

编码

protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{ 
     super.onActivityResult(requestCode, resultCode, data); 
     if(data!=null){enter code here 
      Bundle bundle = data.getExtras(); 
      if(requestCode ==1){ 
       selectedConatcts = bundle.getStringArrayList("sel_contacts"); 
       Log.v("", "Selected contacts-->"+selectedConatcts); 
       if(selectedConatcts.size()<0){ 

       }else{ 
        for(int i =0;i<selectedConatcts.size();i++){ 
         RelativeLayout lnr_inflate = (RelativeLayout)View.inflate(thisActivity, R.layout.contacts_inflate, null); 

         // EditText edt = (EditText)lnr_inflate.findViewById(R.id.edt_contact); 

         String selectednames =selectedConatcts.get(i) ; 

         List<String> stringList = new ArrayList<String>(Arrays.asList(selectednames)); 

         final ListView edt = (ListView)lnr_inflate.findViewById(R.id.edt_contact); 

         ArrayAdapter<String> adaptercon = new ArrayAdapter<String>(thisActivity, android.R.layout.select_dialog_multichoice,stringList); 
         edt.setAdapter(adaptercon); 
         edt.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); 
         edt.setOnItemClickListener(new OnItemClickListener() { 

          @Override 
          public void onItemClick(AdapterView<?> arg0, 
            View arg1, int arg2, long arg3) { 
           // TODO Auto-generated method stub 
           final int len = edt.getCount(); 
            final SparseBooleanArray checked = edt.getCheckedItemPositions(); 

            for(int i =0;i<len;i++){ 


             if (checked.get(i)) { 
//           selectedContacts.add(names[i]); 
//           selectedConatcts.get(i); 
//           selectedConatcts.remove(i); 
              selectedConatcts.remove(phone_nos[i]); 
              contactdisp.removeViewAt(i); 


              //you can you this array list to next activity 
//           do whatever you want with the checked item 
             } 
//          selectedConatcts.get(i); 
             System.out.println("i m in check button cheked"+selectedConatcts.get(i)); 


            }  
           selectedConatcts.remove(phone_nos[arg2]); 
           contactdisp.removeViewAt(arg2); 


          } 
         }); 

         contactdisp.addView(lnr_inflate); 
}}}} 
+1

从数组列表中删除并重新加载列表视图 – Signare

+0

请张贴 – PPartisan

+0

谢谢嗨这里signare你的ListView的代码,我需要个人数据删除需要进行不执行整个列表 –

回答

0
  1. 更好选中该复选框是否被选中或下个不写代码Ëbutton_click

  2. 删除项目
    remove selectedConatcts.remove(phone_nos[arg2]); contactdisp.removeViewAt(arg2);

相关问题