С Новым годом! Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.55/56: Рейтинг темы: голосов - 56, средняя оценка - 4.55
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666

Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ?

27.04.2013, 21:16. Показов 11500. Ответов 43
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня есть ListView, у него есть своя разметка на которой находится строчки на каждой из которых Button и textView. Как мне обработать нажатие кнопки и изменить здесь же значение в textView, например было в textView "0" станет "1". Можно подробнее с примерами кода, так как я новичок.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.04.2013, 21:16
Ответы с готовыми решениями:

Как обработать нажатие на изображение в элементе listView?
Как все знают, listView делится на множество элементов, нажатия на них можно обработать... Но во многих listView помимо тескат часто...

TreeView, ListView, как обработать нажатие мыши
Доброго времени суток коллеги. Проблема в следующем: У меня есть элементы TreeView и ListView, мне необходимо обработать нажатие...

Как обработать нажатие кнопки на клавиатуре
Здравствуйте. Пытаюсь написать игру ханойские башни Механика игры: над штырями бегает квадратик (объект класса Arrow, класс Arrow,...

43
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 16:10  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от V0v1k Посмотреть сообщение
просто скопируйте сюда код.
Сейчас.

Добавлено через 10 минут
Вот код класса MainActivity:

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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
public class MainActivity extends Activity {
 
    ListView mListView;
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_main);
 
        String strUrl = "https://api.vk.com/method/wall.get?domain=vinylminsk&count=5";
 
        DownloadTask downloadTask = new DownloadTask();
        downloadTask.execute(strUrl);
        mListView = (ListView) findViewById(R.id.lv_groups);
    }
 
    public void onMyButtonClick(View v) {
        // создаем и отображаем текстовое уведомление
        Toast toast = Toast.makeText(getApplicationContext(),
                "нажата кнопка Like!", Toast.LENGTH_SHORT);
        toast.setGravity(Gravity.CENTER, 0, 0);
        toast.show();
    }
 
    private String downloadUrl(String strUrl) throws IOException {
        String data = "";
        InputStream iStream = null;
        try {
            URL url = new URL(strUrl);
            HttpURLConnection urlConnection = (HttpURLConnection) url
                    .openConnection();
            urlConnection.connect();
            iStream = urlConnection.getInputStream();
            BufferedReader br = new BufferedReader(new InputStreamReader(
                    iStream));
            StringBuffer sb = new StringBuffer();
            String line = "";
            while ((line = br.readLine()) != null) {
                sb.append(line);
            }
            data = sb.toString();
            br.close();
 
        } catch (Exception e) {
            Log.d("Exception while downloading url", e.toString());
        } finally {
            iStream.close();
        }
        return data;
    }
 
    private class DownloadTask extends AsyncTask<String, Integer, String> {
        String data = null;
 
        @Override
        protected String doInBackground(String... url) {
            try {
                data = downloadUrl(url[0]);
            } catch (Exception e) {
                Log.d("Background Task", e.toString());
            }
            return data;
        }
 
        @Override
        protected void onPostExecute(String result) {
 
            ListViewLoaderTask listViewLoaderTask = new ListViewLoaderTask();
            listViewLoaderTask.execute(result);
        }
    }
 
    private class ListViewLoaderTask extends
            AsyncTask<String, Void, SimpleAdapter> {
 
        JSONObject jObject;
 
        @Override
        protected SimpleAdapter doInBackground(String... strJson) {
            try {
                jObject = new JSONObject(strJson[0]);
                NewsJSONParser newsJsonParser = new NewsJSONParser();
                newsJsonParser.parse(jObject);
            } catch (Exception e) {
                Log.d("JSON Exception1", e.toString());
            }
 
            NewsJSONParser newsJsonParser = new NewsJSONParser();
            List<HashMap<String, Object>> countries = null;
            try {
                countries = newsJsonParser.parse(jObject);
            } catch (Exception e) {
                Log.d("Exception", e.toString());
            }
 
            String[] from = { "text", "imageLogo", "details", "detalisLikes" };
 
            int[] to = { R.id.tv_country, R.id.iv_flag, R.id.textViewRepost,
                    R.id.textViewLike };
 
            SimpleAdapter adapter = new SimpleAdapter(getBaseContext(),
                    countries, R.layout.copy_v_layout, from, to);
            return adapter;
        }
 
        @Override
        protected void onPostExecute(SimpleAdapter adapter) {
 
            mListView.setAdapter(adapter);
            for (int i = 0; i < adapter.getCount(); i++) {
                HashMap<String, Object> hm = (HashMap<String, Object>) adapter
                        .getItem(i);
                String imgUrl = (String) hm.get("imageLogo_path");
                ImageLoaderTask imageLoaderTask = new ImageLoaderTask();
                HashMap<String, Object> hmDownload = new HashMap<String, Object>();
                hm.put("imageLogo_path", imgUrl);
                hm.put("position", i);
                imageLoaderTask.execute(hm);
            }
 
        }
    }
 
    private class ImageLoaderTask extends
            AsyncTask<HashMap<String, Object>, Void, HashMap<String, Object>> {
 
        @Override
        protected HashMap<String, Object> doInBackground(
                HashMap<String, Object>... hm) {
 
            InputStream iStream = null;
            String imgUrl = (String) hm[0].get("imageLogo_path");
            int position = (Integer) hm[0].get("position");
 
            URL url;
            try {
                url = new URL(imgUrl);
                HttpURLConnection urlConnection = (HttpURLConnection) url
                        .openConnection();
                urlConnection.connect();
                iStream = urlConnection.getInputStream();
                File cacheDirectory = getBaseContext().getCacheDir();
                File tmpFile = new File(cacheDirectory.getPath() + "/wpta_"
                        + position + ".png");
                FileOutputStream fOutStream = new FileOutputStream(tmpFile);
                Bitmap b = BitmapFactory.decodeStream(iStream);
                b.compress(Bitmap.CompressFormat.PNG, 100, fOutStream);
                fOutStream.flush();
                fOutStream.close();
 
                HashMap<String, Object> hmBitmap = new HashMap<String, Object>();
                hmBitmap.put("imageLogo", tmpFile.getPath());
                hmBitmap.put("position", position);
                return hmBitmap;
 
            } catch (Exception e) {
                e.printStackTrace();
            }
            return null;
        }
 
        @Override
        protected void onPostExecute(HashMap<String, Object> result) {
            String path = (String) result.get("imageLogo");
            int position = (Integer) result.get("position");
            SimpleAdapter adapter = (SimpleAdapter) mListView.getAdapter();
 
            HashMap<String, Object> hm = (HashMap<String, Object>) adapter
                    .getItem(position);
            hm.put("imageLogo", path);
            adapter.notifyDataSetChanged();
 
            // ПрогрессБар убирем
            ProgressBar playSeekBar;
            playSeekBar = (ProgressBar) findViewById(R.id.progressBar1);
            playSeekBar.setVisibility(View.INVISIBLE);
        }
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
}
Вот разметка activity_main.xml:

XML
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
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/background"
    tools:ignore="UselessLeaf" >
 
    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:background="@drawable/panel"
        android:orientation="vertical" >
 
        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
 
            <Button
                android:id="@+id/button1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_alignParentTop="true"
                 android:layout_marginTop="5dp"
                android:layout_marginRight="15dp"
                android:background="@drawable/settiing"
                android:gravity="center" />
 
            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:layout_centerVertical="true"
                android:text="Новости" 
                android:textSize="17dp"
                android:textColor="@android:color/white"
                android:textStyle="bold"/>
 
        </RelativeLayout>
    </LinearLayout>
 
    <LinearLayout
        android:id="@+id/linearLayout2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:background="@drawable/tab_underground"
        android:orientation="vertical" >
 
        <TabHost
            android:id="@android:id/tabhost"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
 
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical" >
 
                <TabWidget
                    android:id="@android:id/tabs"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" >
                </TabWidget>
 
                <FrameLayout
                    android:id="@android:id/tabcontent"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent" >
 
                    <LinearLayout
                        android:id="@+id/tab1"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent" >
                    </LinearLayout>
 
                    <LinearLayout
                        android:id="@+id/tab2"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent" >
                    </LinearLayout>
 
                    <LinearLayout
                        android:id="@+id/tab3"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent" >
                    </LinearLayout>
 
                    <LinearLayout
                        android:id="@+id/tab4"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent" >
                    </LinearLayout>
                </FrameLayout>
            </LinearLayout>
        </TabHost>
    </LinearLayout>
 
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/linearLayout2"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/linearLayout1"
      
        android:orientation="vertical" >
 
        <ListView
            android:id="@+id/lv_groups"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
        </ListView>
    </LinearLayout>
 
</RelativeLayout>
А вот разметка copy_v_layout.xml:

XML
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/fon_item2" >
 
    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:orientation="vertical" >
 
        <TextView
            android:id="@+id/tv_country"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="TextView" />
    </LinearLayout>
 
    <LinearLayout
        android:id="@+id/linearLayout2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/linearLayout1"
        android:layout_centerVertical="true"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="10dp"
        android:orientation="vertical" >
 
        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
 
            <ImageView
                android:id="@+id/iv_flag"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true"
                android:src="@drawable/image" />
 
            <ProgressBar
                android:id="@+id/progressBar1"
                style="?android:attr/progressBarStyleLarge"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:layout_centerVertical="true"
              />
 
        </RelativeLayout>
 
    </LinearLayout>
 
    <LinearLayout
        android:id="@+id/linearLayout4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/linearLayout3"
        android:layout_below="@+id/linearLayout2"
        android:orientation="vertical" >
 
        <TextView
            android:id="@+id/tv_country_details"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="минуты" />
    </LinearLayout>
 
    <LinearLayout
        android:id="@+id/linearLayout3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/linearLayout2"
        android:layout_below="@+id/linearLayout4"
        android:orientation="vertical" >
    </LinearLayout>
 
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignTop="@+id/linearLayout3"
        android:orientation="vertical" >
 
        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/fon_pod_button"
            android:gravity="center" >
 
            <TextView
                android:id="@+id/textView4share"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignBaseline="@+id/Button01"
                android:layout_alignBottom="@+id/Button01"
                android:layout_alignRight="@+id/Button01"
                android:layout_marginRight="28dp"
                android:text="6" />
 
            <TextView
                android:id="@+id/textView5like"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignBaseline="@+id/Button02"
                android:layout_alignBottom="@+id/Button02"
                android:layout_alignRight="@+id/Button02"
                android:layout_marginRight="26dp"
                android:text="2" />
 
            <Button
                android:id="@+id/Button01"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignBottom="@+id/textView5like"
                android:layout_alignParentTop="true"
                android:layout_marginLeft="10dp"
             
                android:background="@drawable/share" />
 
            <Button
                android:id="@+id/Button02"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_alignParentTop="true"
                android:layout_marginRight="10dp"
                android:onClick="onMyButtonClick"
                android:background="@drawable/like" />
 
            <TextView
                android:id="@+id/textViewLike"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignBaseline="@+id/textView5like"
                android:layout_alignBottom="@+id/textView5like"
                android:layout_alignRight="@+id/textView5like"
                android:text="TextView" />
 
            <TextView
                android:id="@+id/textViewRepost"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignBaseline="@+id/textView4share"
                android:layout_alignBottom="@+id/textView4share"
                android:layout_alignRight="@+id/textView4share"
                android:text="TextView" />
        </RelativeLayout>
    </LinearLayout>
 
</RelativeLayout>
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 16:36
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
SimpleAdapter adapter = new SimpleAdapter(getContext(), countries,
                    R.layout.copy_v_layout, from, to) {
 
                @Override
                public View getView(int position, View convertView,
                        ViewGroup parent) {
                    ViewGroup layout = (ViewGroup) super.getView(position,
                            convertView, parent);
                    Button button = (Button) layout.findViewById(R.id.Button02);
                    button.setTag(position);
                    return layout;
                }
 
            };
Java
1
2
3
public void onMyButtonClick(View v) {
        int position = (Integer) v.getTag();
    }
1
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 16:50  [ТС]
Огромное спасибо!!!!!!!!!!!!!!!! Преогромное! Пробую запускать!

Цитата Сообщение от V0v1k Посмотреть сообщение
Java
1
SimpleAdapter adapter = new SimpleAdapter(getContext(), countries, R.layout.copy_v_layout, from, to) {
А здесь наверное не (getContext() а getBaseContext() ???
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 17:24
Цитата Сообщение от Stylish2013 Посмотреть сообщение
А здесь наверное не (getContext() а getBaseContext() ???
верно.
1
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 18:16  [ТС]
Спасибо Огромное!!! Да всё работает!!!!

Но я столкнулся с новой задачей, а как же здесь поменять текст в textView?
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 18:20
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 @Override
                public View getView(int position, View convertView,
                        ViewGroup parent) {
                    ViewGroup layout = (ViewGroup) super.getView(position,
                            convertView, parent);
                    Button button = (Button) layout.findViewById(R.id.Button02);
                    button.setTag(position);
                     
                    final TextView textView = layout.findViewById(R.id....);
                     button.setOnClickListener(new OnClickListener() {
                        
                        @Override
                        public void onClick(View v) {
                            textView .setText("text");
                        }
                    });
                    return layout;
                }
1
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 18:41  [ТС]
Только почему, то у меня если промотал вниз а потом вверх, то что оно сразу изменила в TextView, может опять пропасть, а в нижних некоторых Item может добавиться, хотя я туда не нажимал. Из за чего это может быть?
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 18:55
это механизм повторного использования View, нужно запоминать в каком айтеме какое значение должно быть и постоянно обновлять в getView.
0
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 19:13  [ТС]
Цитата Сообщение от V0v1k Посмотреть сообщение
это механизм повторного использования View, нужно запоминать в каком айтеме какое значение должно быть и постоянно обновлять в getView.
Полазил по интернету, а как решить это не знаю.... V0v1k Спасибо, что мне помогаете.. p.s а то я уже надоел со своими вопросами.
0
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
29.04.2013, 22:41  [ТС]
Подскажите, почему у меня при прокрутке ListView он как бы подтормаживает пролистывая каждый item, как бы заново грузя новый item? как сохранять ListView? Код можно просмотреть выше.
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
29.04.2013, 22:59
Цитата Сообщение от Stylish2013 Посмотреть сообщение
почему у меня при прокрутке ListView он как бы подтормаживает пролистывая каждый item
может вы засунули тяжелый операции в getView?

Цитата Сообщение от Stylish2013 Посмотреть сообщение
как сохранять ListView?
сохраняют обычно то, что читается с файлов, загружается с сети...
0
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
29.04.2013, 23:07  [ТС]
Да нет, это ещё до getView было. Бывает я начинаю матать вниз ListView картинки уже загрузились всё показывает, потом вверх вниз, всё показывает, а потом бац и уже какие-то не показывает, а потом и вообще может никакие не показать, что у меня не так с кодом?
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
29.04.2013, 23:23
выложите проект.
0
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
30.04.2013, 00:09  [ТС]
Выкладываю: http://rusfolder.com/images/download_1.jpg

если поставить в ссылке получать допустим не 15 новостей а больше например 50, то оно вообще начинает грузится а потом вылетает и картинки вообще не грузит.
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
30.04.2013, 00:30
Цитата Сообщение от Stylish2013 Посмотреть сообщение
если поставить в ссылке получать допустим не 15 новостей а больше например 50, то оно вообще начинает грузится а потом вылетает и картинки вообще не грузит.
памяти не хватает.
https://www.google.com.ua/sear... e&ie=UTF-8

Добавлено через 9 минут
глюки из-за тяжести картинок.
0
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
30.04.2013, 00:38  [ТС]
Я видел ленивый загрузчик, так это надо весь код переписать..))) т.е. памяти не хватает. а какой????
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
30.04.2013, 00:52
ну и немного может улучшить ситуацию использование патерн View Holder в адаптере и использования onClick в лаяуте вместо создание лысенеров в адаптере.

Добавлено через 1 минуту
Цитата Сообщение от Stylish2013 Посмотреть сообщение
Я видел ленивый загрузчик, так это надо весь код переписать..))) т.е. памяти не хватает. а какой????
оперативной. есть определенный лимит для апликейшена в зависимости от девайса.

Добавлено через 12 минут
попробуйте уменьшать картинки по размеру.
0
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
30.04.2013, 00:52  [ТС]
т.е. на другом девайсе оно сможет работать лучше.? я так понимаю.

Цитата Сообщение от V0v1k Посмотреть сообщение
попробуйте уменьшать картинки по размеру.
если скачивать сразу маленькие то всё окей, а как уменьшить размер большой картинки в коде?
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
30.04.2013, 01:10
Цитата Сообщение от Stylish2013 Посмотреть сообщение
если скачивать сразу маленькие то всё окей
ну то скачивайте маленькие.

Добавлено через 2 минуты
Цитата Сообщение от Stylish2013 Посмотреть сообщение
а как уменьшить размер большой картинки в коде?
http://developer.android.com/t... itmap.html

Добавлено через 1 минуту
если и этого будет мало, можете еще немного качеством пожертвовать, там где вы создаете битмап можно использовать другой формат(для PNG игнорится quality) и уменьшить quality.

Добавлено через 6 минут
после всего этого можете еще рассмотреть возможно самому загружать картинки вместо адаптера и кешировать в оперативной памяти - http://developer.android.com/t... itmap.html
постоянное чтение с карты тоже замедляет процесс.
1
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
30.04.2013, 01:23  [ТС]
Спасибо, буду разбираться. Если, что спрошу.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.04.2013, 01:23
Помогаю со студенческими работами здесь

Как обработать событие ctrl + нажатие кнопки
Добрый день, перечитал все связаные темы тут, никак не могу реализовать. Как обработать событие ctrl + нажатие кнопки?

Как обработать событие 'Нажатие апплетовской кнопки' в сервлете ?
Пиплы подскажите не могу найти в доках. Как обработать событие 'Нажатие апплетовской кнопки' в сервлете ? Чтобы было больше понятно...

Как изменить цвет TextView в виджете нажатием кнопки?
Здравствуйте. Я сделал виджет с часами, но мне нужно сделать так чтобы в настройках приложения можно было менять цвет текста, который...

Обработать нажатие кнопки
Здравствуйте. У меня автоматически создаются девять кнопок, вот так: Button But = new Button; private void CreateButton() ...

Обработать нажатие кнопки в DataGridView
Программисты, помогите, в пятницу курсач сдавать!! Есть datagridview, в ней описаны товары: Тип, цена, количество, купить. В столбце...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru