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

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

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

Получить доступ к ImageView в одном конкретном элементе ListView - Программирование Android

19.11.2013, 19:55. Просмотров 931. Ответов 5
Метки нет (Все метки)

Есть layout элемента ListView

XML
1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    > 
    <ImageView 
        android:id="@+id/ImageItem" 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        /> 
</LinearLayout>
С помощью своего адаптера заполняю с список картинками из drawable посредством массива:
Java
1
Integer[] images = {R.drawable.img1, R.drawable.img2}
Далее создаю адаптер. И привязываю его к ListView

Java
1
2
3
list = (ListView) findViewById(R.id.framelistView);
list.setAdapter(adapter);
list.setOnItemClickListener(onItemClickListener);
Ниже описываю листнер, но не знаю, что в нем писать, чтобы при нажатии на элемент списка, получить именно ту картинку, на которую я нажал, и сохранить её в битмап?:

Java
1
2
3
4
5
6
7
8
9
10
OnItemClickListener onItemClickListener = new OnItemClickListener() {
 
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) {
            // TODO Auto-generated method stub
                        
        }
        
    };
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.11.2013, 19:55
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Получить доступ к ImageView в одном конкретном элементе ListView (Программирование Android):

Получить доступ к TextView внутри ListView - Программирование Android
Привет, форумчане! Сначала кратко(потребуется код выложу, просто нужно понять принцип): Есть Активити на базе ЛистАктивити, в ней ЛистВью...

TextView в элементе ListView - Программирование Android
Имеется ListView, у него как положена имеется кастомный адаптер с довольно усложненной логикой. При нажатии на одном из пунктов содержимое...

Клик по кнопке в элементе listView - Программирование Android
Доброго времени суток. Пишу свое первое приложение под андроид. На данный момент получаю листвью, в каждом поле которого отображаются 4...

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

При нажатии на элемент ListView вывести новое Activity с информацией об этом элементе - Программирование Android
Здравствуйте! Помогите пожалуйста! В общем есть список ListView с названиями кафе и ресторанов, надо сделать так чтобы при нажатии на...

Получить картинку ImageView - Программирование Android
Здравствуйте. Подскажите пожалуйста как можно получить ссылку/путь на ресурс картинки которая стоит в ImageView? Перечитал много форумов,...

5
Wenceslaus
Android Developer
130 / 130 / 4
Регистрация: 05.07.2013
Сообщений: 205
19.11.2013, 20:19 #2
aply,
Java
1
2
3
4
5
6
7
8
9
OnItemClickListener onItemClickListener = new OnItemClickListener() {
 
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) {
                Bitmap bm = BitmapFactory.decodeResource(getResources(), images[position]); // images - ваш массив, position - номер выбранного элемента
        }
        
};
1
NiRamz
211 / 211 / 16
Регистрация: 26.12.2010
Сообщений: 691
19.11.2013, 20:20 #3
Java
1
2
3
4
5
6
7
8
9
10
OnItemClickListener onItemClickListener = new OnItemClickListener() {
 
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) {
            // TODO Auto-generated method stub
            Bitmap bm = BitmapFactory.decodeResource(context.getResources(), images[position]);                       
        }
        
    };
Добавлено через 25 секунд

Не по теме:

Опередили

0
aply
0 / 0 / 0
Регистрация: 19.11.2013
Сообщений: 40
19.11.2013, 20:58  [ТС] #4
Wenceslaus, тогда придется описывать массив за пределами метода onCreate моей Активити.
Это, в принципе, не страшно.. но что-то не нравится.
И мне это кажется слишком процедурным, что ли))
Хотелось бы чего-то такого объектного.
У меня же передается в onItemClick view нажатого элемента. Надо как-то от него оттолкнуться.

Пока нашел такой вариант:

Java
1
2
3
4
5
6
7
8
9
10
11
    OnItemClickListener onItemClickListener = new OnItemClickListener() {
 
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) {
            // TODO Auto-generated method stub
            ImageView imageview = (ImageView)view.findViewById(R.id.ImageItem);
            BitmapDrawable drawable = (BitmapDrawable) imageview.getDrawable();
            Bitmap bitmap= drawable.getBitmap();
        }       
    };
0
V0v1k
1159 / 983 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
20.11.2013, 02:12 #5
Цитата Сообщение от aply Посмотреть сообщение
Wenceslaus, тогда придется описывать массив за пределами метода onCreate моей Активити.
Это, в принципе, не страшно.. но что-то не нравится.
Java
1
adapter.getItem(position);
или
Java
1
parent.getAdapter().getItem(position);
1
aply
0 / 0 / 0
Регистрация: 19.11.2013
Сообщений: 40
21.11.2013, 18:31  [ТС] #6
Цитата Сообщение от V0v1k Посмотреть сообщение
Java
1
parent.getAdapter().getItem(position);
А вот это уже интересно, спасибо, попробую
0
21.11.2013, 18:31
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2013, 18:31
Привет! Вот еще темы с ответами:

Получить полный путь к картинке в ImageView - Программирование Android
Доброго времени суток! Помогите советом. Имеется ImageView c картинкой как получить полный путь к этой картинке. Изображение можно...

ListView: сбивается содержимое ImageView элемента при скроллинге + как сделать выделение пункта списка при нажатии? - Программирование Android
1. Есть свой класс ContactsSimpleCursorAdapter, в методе public void bindView(View view, Context context, Cursor c) которого происходит...

Скопировать картинку из одной ImageView в другую ImageView - Программирование Android
В ImageView поставлена картинка методом setImageResource. По нажатию на неё, нужно такую-же картинку поставить в другую вью, а в первой...

EditText в одном из Item ListView - Программирование Android
Помогите решить довольно нестандартную задачу. У меня есть ListView, есть Adapter который делает кастомный вид разметки. В ListView...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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