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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.58
spydark91
85 / 85 / 2
Регистрация: 03.03.2011
Сообщений: 1,872
#1

Загрузка картинки - Android

11.06.2013, 17:20. Просмотров 1480. Ответов 3
Метки нет (Все метки)

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
private class loadPic extends AsyncTask<Void, Void, Void> {
            private String source;
            private boolean error = false;
            private Drawable ans;
            
            public loadPic(String source) {
                this.source = source;
            }
            @Override
            protected Void doInBackground(Void... params) {
                
                try {
                    URL url = new URL(source);
                    InputStream is = url.openStream();
                    ans = Drawable.createFromStream(is, "src");
                    is.close();     
                } catch (ClientProtocolException e) {
                   error = true;
                } catch (IOException t) {
                    error = true;
                }
                return null;
                
            }
 
            @Override
            protected void onPostExecute(Void result) { 
                if(error) {
                    showDialog(getResources().getString(R.string.error_dialog_message_no_acces_to_the_internet));
                    return; 
                }
                final ImageView img = (ImageView)findViewById(R.id.img);
                img.setBackgroundDrawable(ans);
                
            }
 
        }
вылетает исключение

Добавлено через 18 часов 12 минут
наверх
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2013, 17:20     Загрузка картинки
Посмотрите здесь:

Android Загрузка картинки на сервер
Загрузка картинки из Ethernet-а в imageview Android
Android ImageView - загрузка картинки из SDCARD
Android Вставка картинки
Android Загрузка картинки на сервер
Android Загрузка в ImageView картинки по ссылке в отдельном потоке. Исправить код
Загрузка желаемой картинки из файловой системы Android
Листать картинки Android
Загрузка текста и картинки в listView с AsyncTask Android
Android Загрузка картинки из ресурсов в Bitmap. Android 4.1.1
Android Картинки в RadioButton-е
Android Перерисовка картинки

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
11.06.2013, 18:41     Загрузка картинки #2
читайте логи.
YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
11.06.2013, 20:52     Загрузка картинки #3
Java
1
AsyncTask<Void, Void, Void>
Вот это уже косяк.

Делайте Void, Void, Drawable.

Какое исключение?
spydark91
85 / 85 / 2
Регистрация: 03.03.2011
Сообщений: 1,872
12.06.2013, 14:46  [ТС]     Загрузка картинки #4
Java
1
2
3
4
5
6
7
8
9
10
11
@Override
            protected void onPostExecute(Void result) { 
                if(error) {
                    showDialog(getResources().getString(R.string.error_dialog_message_no_acces_to_the_internet));
                    return; 
                }
                final ImageView img = (ImageView)findViewById(R.id.img);
                ans.setBounds(0, 0, ans.getIntrinsicWidth(), ans.getIntrinsicHeight());
                img.setBackground(ans);
                
            }
лог такой
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
06-12 09:52:03.958: I/dalvikvm(1389): Could not find method android.widget.ImageView.setBackground, referenced from method com.example.geodating.userImgDialog_Activity$loadPic.onPostExecute
06-12 09:52:03.958: W/dalvikvm(1389): VFY: unable to resolve virtual method 3325: Landroid/widget/ImageView;.setBackground (Landroid/graphics/drawable/Drawable;)V
06-12 09:52:03.968: D/dalvikvm(1389): VFY: replacing opcode 0x6e at 0x0034
06-12 09:52:03.968: D/dalvikvm(1389): VFY: dead code 0x0037-0037 in Lcom/example/geodating/userImgDialog_Activity$loadPic;.onPostExecute (Ljava/lang/Void;)V
06-12 09:52:05.128: D/dalvikvm(1389): GC_EXTERNAL_ALLOC freed 72K, 51% free 2695K/5447K, external 1067K/1472K, paused 85ms
06-12 09:52:05.208: D/AndroidRuntime(1389): Shutting down VM
06-12 09:52:05.208: W/dalvikvm(1389): threadid=1: thread exiting with uncaught exception (group=0x40015560)
06-12 09:52:05.208: E/AndroidRuntime(1389): FATAL EXCEPTION: main
06-12 09:52:05.208: E/AndroidRuntime(1389): java.lang.NoSuchMethodError: android.widget.ImageView.setBackground
06-12 09:52:05.208: E/AndroidRuntime(1389):     at com.example.geodating.userImgDialog_Activity$loadPic.onPostExecute(userImgDialog_Activity.java:72)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at com.example.geodating.userImgDialog_Activity$loadPic.onPostExecute(userImgDialog_Activity.java:1)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at android.os.AsyncTask.finish(AsyncTask.java:417)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at android.os.AsyncTask.access$300(AsyncTask.java:127)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:429)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at android.os.Handler.dispatchMessage(Handler.java:99)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at android.os.Looper.loop(Looper.java:123)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at android.app.ActivityThread.main(ActivityThread.java:3683)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at java.lang.reflect.Method.invokeNative(Native Method)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at java.lang.reflect.Method.invoke(Method.java:507)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
06-12 09:52:05.208: E/AndroidRuntime(1389):     at dalvik.system.NativeStart.main(Native Method)
06-12 09:52:06.857: I/Process(1389): Sending signal. PID: 1389 SIG: 9
т.е. проблемы на строке img.setBackground(ans);

как правильно вывести картинку?

Добавлено через 51 минуту
разобрался, вопрос снят
Yandex
Объявления
12.06.2013, 14:46     Загрузка картинки
Ответ Создать тему
Опции темы

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