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

ImageView - загрузка картинки из SDCARD - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android ListView: подсветка выбранного элемента http://www.cyberforum.ru/android-dev/thread932992.html
В активити есть несколько списков со своей разметкой. Пересмотрел кучу примеров, но у самого что-то не получается оставить после нажатия подсвеченым элемент ListView. ...... protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_zakaz_item); ..... katItemList = new ArrayList<HashMap<String, String>>();
Android Локализация объявлений AdMob Здравствуйте. Хочу попробовать раскрутить свое приложение через AdMob. Объявление (баннер) работает, клики идут, но я не где не могу его найти, не в опере (браузере), не в других приложениях, количество показов в день примерно 250000, дневной бюджет - 15y.e. Трансляцию объявления поставил на свой город и на Москву. Скажите пожалуйста как узнать где мое объявление весит(на каком сайте,... http://www.cyberforum.ru/android-dev/thread932837.html
Анимация ListView. Отрабатывает не так, как хотелось бы Android
Сделал адаптер с анимацией, но она работает так, как будто я анимировал не отдельную строку, а весь listview. public class MyAdapter extends BaseAdapter{ private ArrayList<MyObject> objects; private LayoutInflater inflater; public MyAdapter(Context context, ArrayList<MyObject> myObjects){ objects = myObjects; inflater = (LayoutInflater)...
Android База SQLiteDatabase
Как совместить два кода, код с базой DBHelper dbHelper; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); dbHelper = new DBHelper(this); ContentValues cv = new ContentValues();
Android Как правильно конвертонуть дату? http://www.cyberforum.ru/android-dev/thread932667.html
Пишу приложение, оно читает входящие/исходящие смски, но вместо понятной даты(месяц, число, время), я получаю такие строки: 1375447414712 (это сегодняшняя смска) Помогите.
Android Рисуем иконку для Notification.Builder setSmallIcon(int icon) Что для этого нужно? Можно ли зарегистрировать свой ресурс - картинку из памяти (сам рисую). setSmallIcon требует int - код картинки из ресурсов. Но видел индикатор заряда в 4х тонах по 100 значений (%) - вряд-ли 400 картинок в ресурсах... подробнее

Показать сообщение отдельно
Sanu0074
58 / 58 / 2
Регистрация: 14.06.2010
Сообщений: 1,189
Записей в блоге: 5
04.08.2013, 17:28  [ТС]     ImageView - загрузка картинки из SDCARD
Цитата Сообщение от V0v1k Посмотреть сообщение
зачем здесь Object?

наведите курсор на ошибку, будут варианты решения, нужно объявлять pic как final
Вот переделал класс:
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
public class ShowPictureInSD {
    
    public String ROOT_DIR="HomeAndroid";
    public String fileName;
    public String id;
    public String contentType;
    final ImageView pic;
    public Context activity;
    
    public ShowPictureInSD(String fileName, String contentType, String id, ImageView pic, Context activity){
        this.fileName=fileName;
        this.id=id;
        this.contentType=contentType;
        this.pic=pic;
        this.activity=activity;
        ShowPicture();
    }
 
    
    public Bitmap ShowPicture() { 
        File dir = new File(Environment.getExternalStorageDirectory() + File.separator + ROOT_DIR + File.separator + contentType + File.separator + id); 
        dir.mkdirs();
       
        final File f = new File (dir,  fileName+".png");
        Log.d("ShowPictureInSD", "Поиск картинки: "+f.getAbsolutePath());
        if (f.exists()){
            //Bitmap bm = BitmapFactory.decodeFile(f.getAbsolutePath());
            //pic.setImageBitmap(bm);
            
            
            ((Object) activity).runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    Bitmap bm = BitmapFactory.decodeFile(f.getAbsolutePath());
                    pic.setImageBitmap(bm);
                  }
               });
            
            
        }else{
            Log.d("ShowPictureInSD", "Картинка ненайдена!");
            return null;
        }
        return null;
    } 
}
Теперь runOnUiThread, когда наводиш предлагает: "change cast of activity"

Если делать так: ((Object) activity).runOnUiThread(new Runnable(){... то ошибка таже остается..

Добавлено через 11 минут
Еще так переделал:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
 if (f.exists()){
            new Thread() {  
                @Override
                public void run() {
 
 
                    Bitmap bm = BitmapFactory.decodeFile(f.getAbsolutePath());
                    pic.setImageBitmap(bm);
                    
                  
                }
            }.start();
        }
Но в логах - та же ошибка... незнаю уже что делать?
 
Текущее время: 18:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru