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

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

Войти
Регистрация
Восстановить пароль
 
NOSC
43 / 43 / 3
Регистрация: 10.10.2013
Сообщений: 297
#1

Нажатие на элементы ListView - Программирование Android

19.12.2013, 09:45. Просмотров 825. Ответов 3
Метки нет (Все метки)

Всем доброго времени суток.
Коллеги, помогите решить проблему.

Структура приложения:
Data.java
Java
1
2
3
public class Data extends Application{
    final static String[] list1 = new String[] { "item1", "item2", "item3"};
    final static String[] list2 = new String[] { "item1", "item2", "item3"};
MainActivity.java
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
public class MainActivity extends Activity{
public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
            ImageView img1 = (ImageView) findViewById(R.id.imageView3);
            img1.setOnClickListener(new OnClickListener() {
                 
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    PsyList.t = Data.list1;
                    PsyList.b = R.drawable.backgr1;
                    Intent int1 = new Intent(MainActivity.this, PsyList.class);
                    startActivity(int1);
                }
            }); 
            ImageView img2 = (ImageView) findViewById(R.id.imageView4);
            img2.setOnClickListener(new OnClickListener() {
                 
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    PsyList.t = Data.list2;
                    PsyList.b = R.drawable.backgr2;
                    Intent int1 = new Intent(MainActivity.this, PsyList.class);
                    startActivity(int1);
                }
            });
То есть при нажатии на img1 отображается список1, при нажатии img2 отображается список2 в активити PsyList

Не могу найти в интернете нормальных тутариалов, чтобы item были кликабельные, но при этом надо понимать, что list1и list2 это разная информация, значит ссылки должны быть динамическими.

Подскажите где посмотреть правильное решение, может кто-то сталкивался??

Спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2013, 09:45     Нажатие на элементы ListView
Посмотрите здесь:

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

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

Как считать нажатие на одно из полей в ListView? - Программирование Android
Добрый день, как считать нажатие на одно из полей в listview? вставляю такой код в onCreat, но не выводит log. Что не так? ...

Не могу заставить OnItemClickListener, ловить нажатие на элемент списка ListView - Программирование Android
Пишу простенькое приложение по сбору цен на разные товары, сейчас пытаюсь оптимизировать часть кода который работает со списком, когда...

Нажатие на элементы ExpandableListView - Программирование Android
Добрый день. У меня есть ExpandableListView в нём сделан setOnChildClickListener получается так, что в item элемент списка может быть...

Загрузить элементы в Listview - Программирование Android
public class MainActivity extends ListActivity { TextView txt; MyTask mt; List<String> listz; @Override ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kirawa
33 / 33 / 1
Регистрация: 12.11.2013
Сообщений: 336
19.12.2013, 12:36     Нажатие на элементы ListView #2
OnItemClickListener КАПАЙ СУДА
NOSC
43 / 43 / 3
Регистрация: 10.10.2013
Сообщений: 297
19.12.2013, 13:16  [ТС]     Нажатие на элементы ListView #3
Цитата Сообщение от kirawa Посмотреть сообщение
OnItemClickListener КАПАЙ СУДА
Капаю. Проблема в том, что у меня динамичный список. Привязывать клики к номеру item никак нельзя. Может быть можно задать условия, что то типа
[логика] если текст в item = текст1 то открыть активити такое то и т.д. [/логика]

кто-нибудь сталкивался??
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.12.2013, 21:02     Нажатие на элементы ListView
Еще ссылки по теме:

Как в ListView добавлять элементы - Программирование Android
всем привет есть ListView , при старте программы одна строчка занята с надписью 1 когда жмёём на кнопку то прибавляется другой 2 1 если...

Как раскрасить в цвета элементы ListView - Программирование Android
Как раскрасить в цвета элементы ListView

Как из AsyncTask Добавить элементы в ListView - Программирование Android
В общем сабж. Используя адаптер как сделать?

Действие на нажатие - Программирование Android
вот нашел урок http://startandroid.ru/uroki/vse-uroki-spi...ilozhenija.html в принципе то что надо. Вот только как поменять код, чтобы...

Нажатие на CardView - Программирование Android
Всем привет. Вроде вопрос простой, но найти ответа не могу на него. Есть Активити, в нем несколько CardView. Хочется по нажатию данных...

Нажатие ImageButton - Программирование Android
Хочу определить ImageButton (остается в нажатом положении/ в фокусе/ не нажата) и у меня не хочет работать ,вылазит ошибка ,подскажите...


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

Или воспользуйтесь поиском по форуму:
NOSC
43 / 43 / 3
Регистрация: 10.10.2013
Сообщений: 297
21.12.2013, 21:02  [ТС]     Нажатие на элементы ListView #4
Цитата Сообщение от kirawa Посмотреть сообщение
OnItemClickListener
Коллеги, сделал вот так
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
final Intent int1 = new Intent(PsyList.this, WView.class);
        
        lvMain.setOnItemClickListener(new OnItemClickListener()
        {
            @Override 
            public void onItemClick(AdapterView<?> arg0, View arg1,int position, long arg3)
            {
                boolean str = ((TextView)arg1).getText().toString() != null;
                
                if  (str = "item1" != null ) {
                    startActivity(int1);
                } 
//              else { return;} 
//              Toast.makeText(PsyList.this, str, Toast.LENGTH_SHORT).show();
            }
        });
Активити закрывается с ошибками:
Кликните здесь для просмотра всего текста
12-21 22:58:55.082: W/dalvikvm(31526): threadid=1: thread exiting with uncaught exception (group=0x40c03930)
12-21 22:58:55.092: E/AndroidRuntime(31526): FATAL EXCEPTION: main
12-21 22:58:55.092: E/AndroidRuntime(31526): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.site.application/com.site.application.WView}: java.lang.ClassCastException: android.widget.Space cannot be cast to android.view.ViewGroup
12-21 22:58:55.092: E/AndroidRuntime(31526): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307)
12-21 22:58:55.092: E/AndroidRuntime(31526): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2357)
12-21 22:58:55.092: E/AndroidRuntime(31526): at android.app.ActivityThread.access$600(ActivityThread.java:153)
12-21 22:58:55.092: E/AndroidRuntime(31526): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1247)
12-21 22:58:55.092: E/AndroidRuntime(31526): at android.os.Handler.dispatchMessage(Handler.java:99)
12-21 22:58:55.092: E/AndroidRuntime(31526): at android.os.Looper.loop(Looper.java:137)
12-21 22:58:55.092: E/AndroidRuntime(31526): at android.app.ActivityThread.main(ActivityThread.java:5226)
12-21 22:58:55.092: E/AndroidRuntime(31526): at java.lang.reflect.Method.invokeNative(Native Method)
12-21 22:58:55.092: E/AndroidRuntime(31526): at java.lang.reflect.Method.invoke(Method.java:511)
12-21 22:58:55.092: E/AndroidRuntime(31526): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
12-21 22:58:55.092: E/AndroidRuntime(31526): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
12-21 22:58:55.092: E/AndroidRuntime(31526): at dalvik.system.NativeStart.main(Native Method)



Не подскажите что не так??
Yandex
Объявления
21.12.2013, 21:02     Нажатие на элементы ListView
Ответ Создать тему
Опции темы

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