Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
dememos
0 / 0 / 0
Регистрация: 23.04.2016
Сообщений: 1
#1

Как по position в onItemClick вытащить данные JSON? - Android

24.04.2016, 16:56. Просмотров 134. Ответов 0
Метки нет (Все метки)

В цикле for парсется JSON и оправляет в листвью. Потом вызывается setOnItemClickListener, там есть только позиция, как по позиции вытащить данные, которые выводятся парсером? Подскажите, пожалуйста.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
    private void ParseTask() {
 
 
 
        JsonArrayRequest req = new JsonArrayRequest(urlJsonArry, new Response.Listener<JSONArray>() {
 
                    @Override
                    public void onResponse(JSONArray response) {
                        
                        try {
 
                            jsonResponse = "";
                            for (int i = 0; i < response.length(); i++) {
 
                                JSONObject person = (JSONObject) response.get(i);
 
                                String substr = "\\p{Punct}", regex = " ";
 
                                String id = person.getString("id");
 
 
                                Long ids = Long.valueOf(id);
 
 
                                String name = person.getString("name");
                                clicked.setName(name);
                                String genres = person.getString("genres");//replaceAll("[^A-Za-zА-Яа-я0-9]", "")
                                genres = genres.replaceAll(substr, regex);
 
                                String tracks = person.getString("tracks");
                                String albums = person.getString("albums");
                                String description = person.getString("description");
 
                                String mus = albums + " альбомов, " + tracks + " песен";
                                //Log.d(LOG_TAG, mus);
 
                                JSONObject cover = person.getJSONObject("cover");
                                String coverSm = cover.getString("small");
                                String coverBig = cover.getString("big");
 
 
                                //idki += id + ",";
 
 
                                try {
                                    String link = person.getString("link");
                                }
                                catch (Exception e){
                                    String link = "";
                                }
 
                                try {
                                    String secondString = new String(name.getBytes("ISO-8859-1"),"UTF-8");
                                    //Log.d(LOG_TAG, secondString);
                                    Users one = new Users(id, secondString, coverSm, genres, mus);
                                    fetch.add(one);
 
                                    lv = (ListView) findViewById(R.id.insideIn);
 
                                    adaptcon = new Content(MainActivity.this, R.id.insideIn,fetch);
                                    //String str = (String) lv.getItemAtPosition(i);
                                    lv.setAdapter(adaptcon);
 
 
                                    //idkial.add(one);
 
 
 
 
 
                                } catch (UnsupportedEncodingException e) {
                                    e.printStackTrace();
                                }
 
 
 
                                //Log.d(LOG_TAG, name);
                                //Log.d(LOG_TAG, coverSm);
                                //Log.d(LOG_TAG, coverBig);
 
 
                            }
 
                            lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                                @Override
                                public void onItemClick(AdapterView<?> parent, View view, int position, long ids) {
                                    Intent intent = new Intent(getApplicationContext(), Info.class);
                                    intent.putExtra("position", ids);
 
 
                                    String hello = clicked.getName();
 
                                    startActivity(intent);
 
 
                                }
                            });
 
 
                        } catch (JSONException e) {
                            e.printStackTrace();
                            Toast.makeText(getApplicationContext(),
                                    "Ошибка: " + e.getMessage(),
                                    Toast.LENGTH_LONG).show();
                        }
 
 
                    }
                }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                VolleyLog.d(TAG, "Error: " + error.getMessage());
                Toast.makeText(getApplicationContext(),
                        error.getMessage(), Toast.LENGTH_SHORT).show();
 
            }
        });
 
 
 
 
 
            AppController.getInstance().addToRequestQueue(req);
 
 
 
 
 
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2016, 16:56     Как по position в onItemClick вытащить данные JSON?
Посмотрите здесь:

onItemClick определенные елементы Android
Android Ошибка - Errororg.json.JSONExceprion: Value bd.json of type java.lang.String cannot be converted to JSONObject
Android Как вытащить данные из потока. Cant create handler inside thread that has not called Looper.prepare()
ListView, База данных и SimpleCursorAdapter - onItemClick срабатывает только после добавления данных Android
Данные из json в spinner Android
Как отправить данные json через HttpURLConnection Android
Как вытащить значение из таблицы бд sqlite Android
Как извлечь данные из сервера Parse, чтобы эти данные были видны всем? Android
Android При чтении JSON файла из папки Assets разные данные
Android Recyclerview при onLongItemClick срабатывает и onItemClick?
Android Аккаунт Google, как вытащить имя пользователя?
Android Как вытащить файл из эмулятора?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru