ArrayAdapter: данные Json для отправки на счетчик

Привет, я создал действие, которое извлекает данные из текста в формате json и отображается в виде счетчика. Но меня немного смущает последняя часть. ContactList является типом ArrayList, ArrayAdapter не принимает список контактов в качестве своего дополнения. Является Вот мой код

 public class RegisterForEventActivity extends Activity {

        private static String url = "http://10.0.2.2/Contacts.txt";
        private static final String TAG_NAME = "name";
        private static final String TAG_CONTACTS = "contacts";

        JSONArray jsonArray = null;

        Spinner areaspinner;

        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.register_layout);


         // Hashmap for ListView
            ArrayList<HashMap<String, String>> contactList = new ArrayList<HashMap<String, String>>();

                // Creating JSON Parser instance
                JSONParser jParser = new JSONParser();

                // getting JSON string from URL
                JSONObject json = jParser.getJSONFromUrl(url);

                try {
                    // Getting Array of Contacts
                    jsonArray = json.getJSONArray(TAG_CONTACTS);

                    final String[] array_spinner = new String[jsonArray.length()]; 

                    // looping through All Contacts
                    for(int i = 0; i < jsonArray.length(); i++){

                        JSONObject c = jsonArray.getJSONObject(i);

                        // Storing each json item in variable
                        String name = c.getString(TAG_NAME);

                        // creating new HashMap
                        HashMap<String, String> map = new HashMap<String, String>();

                        // adding each child node to HashMap key => value
                        map.put(TAG_NAME, name);


                        // adding HashList to ArrayList
                        contactList.add(map);

ArrayAdapter<String> adapter = 
                                new ArrayAdapter<String> (this, android.R.layout.simple_spinner_item, contactList);       
                        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                        areaspinner.setAdapter(adapter);
                    }

                } catch (JSONException e) {
                    e.printStackTrace();
                }
        }
    }
6
задан yourdroid 4 March 2012 в 18:24
поделиться