我想访问带有名称的电话号码。但是当我这样做时,我的通话不符合我选择的号码。我有一个带有复选框的列表视图。用户的选择名称并且这些名字转到次数第二个活动。我的问题是第二个活动中的数字和名字选择在第一个活动。当我打电话给任何名字,我的应用程序调用不同的数字。我可以如何解决它?联系人名称不匹配在列表视图中的数字
ArrayList<String> listte = new ArrayList<String>();
ArrayList<String> selectedlist = new ArrayList<>();
ListView chosinglist;
Button kaydet;
ArrayList<String> listtearama = new ArrayList<>();
ArrayList<String> selectedlistarama = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
chosinglist = (ListView) findViewById(R.id.chosing);
chosinglist.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
getNumber(this.getContentResolver());
}
private void getNumber(ContentResolver contentResolver) {
Cursor phones = contentResolver.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null);
while (phones.moveToNext()) {
String name = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
String phonenumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
System.out.println(".................." + phonenumber);
if (!listte.contains(name)){ // it doesn"t work.But if It doesn"t exist, listview is repeating yourself.
listte.add(name);
}
if (!listtearama.contains(phonenumber)){// it doesn"t work.But if It doesn"t exist, listview is repeating yourself.
listtearama.add(phonenumber); }
}
phones.close();// close cursor
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.checkrow,
R.id.checkedTextView2, listte);
chosinglist.setAdapter(adapter);
chosinglist.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String selecteditem = (String) parent.getAdapter().getItem(position);
int arkaplandakinumaraposition = parent.getPositionForView(view);
String aramakicinliste = listtearama.get(arkaplandakinumaraposition);
if (selectedlistarama.contains(aramakicinliste)) {
selectedlistarama.remove(aramakicinliste);
} else
selectedlistarama.add(aramakicinliste);
if (selectedlist.contains(selecteditem)) {
selectedlist.remove(selecteditem);
} else selectedlist.add(selecteditem);
为您的问题添加一个android,java标签,以供更多人表现出兴趣。此外,你的代码不是很具描述性,所以你很难掌握你在做什么,尝试使用描述性变量名称或评论 –
好的我添加了android标签。 –
ok.I编辑我的codo一点点。如果你是thinging.just说 –