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

LruCache метод put возвращает null - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Позиционирование картинок http://www.cyberforum.ru/android-dev/thread939775.html
Мне бы хотелось научиться позиционировать картинки относительно нажатой области экрана
Android SimpleExpandableListAdapter Доброго времени суток! Подскажите, как можно заменить данные из SimpleExpandableListAdapter по аналогии с ViewBinder? Если есть, то небольшой пример весьма не помешает. Спасибо. http://www.cyberforum.ru/android-dev/thread939753.html
Запуск активности из класса, который не наследуется от Activity Android
Есть класс, который отвечает за обработку логики. Есть функция, которая при определенном условии должна открыть новую форму(Активити). Подскажите, возможно ли это? Логика всей программы такая: в мейн_активити идет обращение к классу с логикой, а уже оттуда вызывается новая активити.
Android Как запустить активити без прописывания в манифесте?
неужели нельзя создавать активити динамически?
Android Компиляция занимает примерно полторы минуты. Очень долго http://www.cyberforum.ru/android-dev/thread939623.html
Подскажите пожалуйста, возможно ли сделать компиляцию более быстрой? Работаю в эклипс helios. p.s да и запуск эмулятора иногда около 20 минут... я и не думал, что при программировании под Андройд будут такие приколы 0_о Я только начал изучать и возможно еще не понял как все ускорить и возможно ли это?
Android obfuscator и ручная компиляция Как сделать подобное: 1) создать BAT-файл для перекомпиляции проекта. Пользуюсь Андроид-студией, но думаю это не существенно -только конечный файл и временные папки отличаются. 2) создать BAT-файл для обфускации проекта (сжатие, кодирование) без порчи основных файлов. Через отдельную папку и возможно ProGuard. По поводу 2 нашел http://habrahabr.ru/post/112833/ но это якобы ВСТРОЕНО... подробнее

Показать сообщение отдельно
ASAndrey
1 / 1 / 0
Регистрация: 13.07.2013
Сообщений: 70

LruCache метод put возвращает null - Android

18.08.2013, 18:00. Просмотров 608. Ответов 2
Метки (Все метки)

Всем привет! Не могу поянть почему LruCache метод put возвращает null. Может быть кто знает подскажет в чем тут дело? Вот код:
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
public class QwerAdapter extends ArrayAdapter<ListQwers> {
    private int resource;
    private LayoutInflater inflater;
    private Context context;
    private ListQwers listQwers;
    private LruCache<String, Bitmap> memoryCache;
 
    public QwerAdapter(Context ctx, int resourceId, List objects) {
 
        super(ctx, resourceId, objects);
        resource = resourceId;
        inflater = LayoutInflater.from(ctx);
        context = ctx;
 
        int cacheSize = ((ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE)).getMemoryClass();
        cacheSize = (cacheSize / 4) * 1024 * 1024;
 
        memoryCache = new LruCache<String, Bitmap>(cacheSize) {
            @Override
            public int sizeOf(String key, Bitmap bitmap) {
                int getBytesImage;
                if (Build.VERSION.SDK_INT >= 12){
                     getBytesImage = bitmap.getByteCount();
                }else{
                    getBytesImage = bitmap.getRowBytes() * bitmap.getHeight();
                }
                return getBytesImage;
            }
        };
        
    }
 
    @Override   public View getView(int position, View convertView, ViewGroup parent) {
 
        convertView = (RelativeLayout) inflater.inflate(resource, null);
        listQwers = getItem(position);
        new DisplayImageFromURL(
                (ImageView) convertView.findViewById(R.id.imageQwer))
                .execute("путь до изображения");
        return convertView;
    }
 
    private class DisplayImageFromURL extends AsyncTask<String, Void, Bitmap> {
        ImageView bmImage;
 
         public DisplayImageFromURL(ImageView bmImage) {
         try{
         this.bmImage = bmImage;}catch(Exception e){}
         }
 
        protected Bitmap doInBackground(String... urls) {
            String urldisplay = urls[0];
            Bitmap mIcon11 = null;
            try {
 
                Bitmap imageQwer = memoryCache.get(urldisplay);
                if (imageQwer != null) {
                    mIcon11 = imageQwer;
                } else if (imageQwer == null) {
                    InputStream in = new java.net.URL(urldisplay).openStream();
                    Bitmap image = null;
                     
                    image = BitmapFactory.decodeStream(in);
                                        int qwer = image.getByteCount(); // размер изображения в байтах получается 32400 байт
                                        // размер выделенного кэша получается 4194304, так что памяти точно хватает для размещения одной тестовой картинки.
                    mIcon11 = memoryCache.put(urldisplay,image);// memoryCache.put возвращает null 
                    mIcon11 = image;
                }
 
            } catch (Exception e) {
                e.printStackTrace();
            }
 
            return mIcon11;
 
        }
 
        protected void onPostExecute(Bitmap result) {
            try{
                bmImage.setImageBitmap(result);}catch(Exception e){}
        }
    }
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru