如何在listview中显示我的json数组电话号码以及其他号码?

时间:2017-08-21 12:37:56

标签: android arrays listview

我从服务器获得JSON Array,该服务器包含使用我的应用的用户手机上的部分手机通讯录。我希望这些电话号码以ListView 'Already a contact'显示给用户。

名为JSON Array的{​​{1}}可能是,例如:

JsonArrayMatchingContacts

这是我的代码,但它不起作用。它适用于单个值 - 例如,如果我[{"contact_phonenumber":"+12345678"},{"contact_phonenumber":"+23456789}, {"contact_phonenumber":"+34567890"}] 它会提出if (phoneNumberofContact.equals("+12345678")) etc..,但我需要让它适用于我的Already a Contact。你能帮忙吗?

JSON Array

2 个答案:

答案 0 :(得分:1)

  put your if condition in loop..you will get it.try this
   SelectPhoneContact selectContact = new SelectPhoneContact();

            ArrayList<String> MatchingContacts = new ArrayList<String>();
            try {
                JSONArray Object = new JSONArray(JsonArrayMatchingContacts);
                for (int x = 0; x < Object.length(); x++) {
                    final JSONObject obj = Object.getJSONObject(x);
                    if (phoneNumberofContact.equals(MatchingContacts))
            {

                phoneNumberofContact= "Already a contact";
                selectPhoneContacts.add(selectContact);
            } else {
                selectPhoneContacts.add(selectContact);
            }

                }

            } catch(Exception e) {
                e.printStackTrace();
            }



            selectContact.setName(name);
            selectContact.setPhone(phoneNumberofContact);

答案 1 :(得分:1)

您正在比较字符串(phoneNumberofContact)和列表(MatchingContacts)。

您应该检查字符串是否包含在列表中。

if (MatchingContacts.contains( phoneNumberofContact )) {