2014-02-20 2 views
0

У меня есть несколько диалоговых окон, в которых пользователь вводит свои данные (персональные данные - имя, фамилия и т. Д.), Мне нужно захватить детали и конвертировать в JSON. Пользователь может ввести несколько персональных данных. person1, person2, person3 (которые должны быть JSONObjects). Когда когда-нибудь вызывается функция bellow в первый раз, я хочу JSONObject personJSON1 = новый JSONObject(); второй раз его называют JSONObject personJSON2 = новый JSONObject(); и так далее. Не могли бы вы предложить, как я могу это достичь.Как изменить имя JSONObject динамически

private void personAdded() { 
JSONObject personJSON = new JSONObject(); 
     JSONArray personArrayjson = new JSONArray(); 
     JSONObject personObjectJson = new JSONObject(); 
     try {   
       personObjectJson.put("otherFirstName", sOtherFirstName); 
       personObjectJson.put("otherLastName", sOtherLastName); 
       personObjectJson.put("otherAddress", sOtherAddress); 
       personObjectJson.put("otherTown", sOtherTown); 
       personObjectJson.put("otherCounty", sOtherCounty); 
       personObjectJson.put("otherPostcode", sOtherPostcode); 
       personObjectJson.put("otherTelephone", sOtherTelephone); 
       personObjectJson.put("otherMobilePhone", sOtherMobilePhone);  
       personObjectJson.put("otherEmail", sOtherEmail); 
       personObjectJson.put("otherPersonInvolvement", sHowWasTheOtherPersonInvolved);   

     } catch (JSONException e) { 

      e.printStackTrace(); 
     } 
} 

Ваша помощь/предложение очень ценится. Спасибо

+0

Вы можете использовать список 'JSONObject' и для каждого нового человека вы добавляете новый элемент в список. – user3182577

+0

вы можете предложить любые ссылки или примеры для списка JSONObject – BRDroid

ответ

1
public List<JSONObject> mMyList = new ArrayList<JSONObject>(); 

    private void personAdded() { 
     JSONObject personJSON = new JSONObject(); 
       JSONArray personArrayjson = new JSONArray(); 
       JSONObject personObjectJson = new JSONObject(); 
       try {   
         personObjectJson.put("otherFirstName", sOtherFirstName); 
         personObjectJson.put("otherLastName", sOtherLastName); 
         personObjectJson.put("otherAddress", sOtherAddress); 
         personObjectJson.put("otherTown", sOtherTown); 
         personObjectJson.put("otherCounty", sOtherCounty); 
         personObjectJson.put("otherPostcode", sOtherPostcode); 
         personObjectJson.put("otherTelephone", sOtherTelephone); 
         personObjectJson.put("otherMobilePhone", sOtherMobilePhone);  
         personObjectJson.put("otherEmail", sOtherEmail); 
         personObjectJson.put("otherPersonInvolvement", sHowWasTheOtherPersonInvolved);   
     mMyList.add(personJSON) 
       } catch (JSONException e) { 

        e.printStackTrace(); 
       } 

Выполнение реализации списка будет выглядеть примерно так.

+0

Большое спасибо. Это именно то, что я искал. один вопрос в этом. Пользователь может удалить человека, в этом случае, как удалить из списка для персонифицированного лица, можно сказать, что person1 необходимо удалить. – BRDroid

+0

Ссылки на API здесь помогут вам: http://developer.android.com/reference/java/ util/List.html – Submersed

+0

Чтобы удалить использование 'mMyList.remove()', вы можете удалить положением или JSONObject. – user3182577

Смежные вопросы