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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 49, средняя оценка - 4.76
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
#1

Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? - Android

27.04.2013, 21:16. Просмотров 6443. Ответов 43
Метки нет (Все метки)

У меня есть ListView, у него есть своя разметка на которой находится строчки на каждой из которых Button и textView. Как мне обработать нажатие кнопки и изменить здесь же значение в textView, например было в textView "0" станет "1". Можно подробнее с примерами кода, так как я новичок.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.04.2013, 21:16     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ?
Посмотрите здесь:

Android Не получается обработать долгий клик по TextView
Как обработать нажатие ImageView Android
Android Как в Android Studio по нажатию кнопки выводить свой текст в TextView?
Как создать ListView с двумя TextView и работать с ними Android
Как изменить форму TextView элемента? Android
Как программно изменить textview? Android
Android Смена TextView в ListView
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dubok79
28.04.2013, 01:12
  #2

Не по теме:

ну чо сразу с примерами кода? совсем лень покопаться?

Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 01:56  [ТС]     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #3
Цитата Сообщение от dubok79 Посмотреть сообщение

Не по теме:

ну чо сразу с примерами кода? совсем лень покопаться?

если бы я не копался до этого я бы не писал.
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 12:01     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #4
Java
1
2
3
4
5
 button.setOnClickListener(new View.OnClickListener() {
             public void onClick(View v) {
                 textView.setText("text");
             }
         });
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 12:21  [ТС]     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #5
Цитата Сообщение от V0v1k Посмотреть сообщение
Java
1
2
3
4
5
 button.setOnClickListener(new View.OnClickListener() {
             public void onClick(View v) {
                 textView.setText("text");
             }
         });
При использовании такого кода у меня ошибка. На том месте когда идёт инициализация первой строчки. И у меня в листвью много записей и мне нужно чтобы каждая кнопка на листвью выполняла разные действия. а не одно и тоже.
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 12:36     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #6
Цитата Сообщение от Stylish2013 Посмотреть сообщение
При использовании такого кода у меня ошибка. На том месте когда идёт инициализация первой строчки.
какая ошибка?


Цитата Сообщение от Stylish2013 Посмотреть сообщение
И у меня в листвью много записей и мне нужно чтобы каждая кнопка на листвью выполняла разные действия. а не одно и тоже.
не вижу проблемы.
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 13:12  [ТС]     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #7
Вот что выдает LOG

04-28 08:19:02.845: D/AndroidRuntime(274): Shutting down VM
04-28 08:19:02.845: W/dalvikvm(274): threadid=1: thread exiting with uncaught exception (group=0x4001d800)

04-28 09:09:27.824: D/AndroidRuntime(356): Shutting down VM
04-28 09:09:27.824: W/dalvikvm(356): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
04-28 09:09:27.844: E/AndroidRuntime(356): FATAL EXCEPTION: main
04-28 09:09:27.844: E/AndroidRuntime(356): java.lang.RuntimeException: Unable to start activity ComponentInfo{in.wptrafficanalyzer.listviewwithjsonfromurl/ru.nikolaxa.listviewjsonurl.MainActivity}: java.lang.NullPointerException
04-28 09:09:27.844: E/AndroidRuntime(356): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
04-28 09:09:27.844: E/AndroidRuntime(356): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
04-28 09:09:27.844: E/AndroidRuntime(356): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
04-28 09:09:27.844: E/AndroidRuntime(356): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
04-28 09:09:27.844: E/AndroidRuntime(356): at android.os.Handler.dispatchMessage(Handler.java:99)
04-28 09:09:27.844: E/AndroidRuntime(356): at android.os.Looper.loop(Looper.java:123)
04-28 09:09:27.844: E/AndroidRuntime(356): at android.app.ActivityThread.main(ActivityThread.java:4627)
04-28 09:09:27.844: E/AndroidRuntime(356): at java.lang.reflect.Method.invokeNative(Native Method)
04-28 09:09:27.844: E/AndroidRuntime(356): at java.lang.reflect.Method.invoke(Method.java:521)
04-28 09:09:27.844: E/AndroidRuntime(356): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
04-28 09:09:27.844: E/AndroidRuntime(356): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
04-28 09:09:27.844: E/AndroidRuntime(356): at dalvik.system.NativeStart.main(Native Method)
04-28 09:09:27.844: E/AndroidRuntime(356): Caused by: java.lang.NullPointerException
04-28 09:09:27.844: E/AndroidRuntime(356): at ru.nikolaxa.listviewjsonurl.MainActivity.onCreate(MainActivity.java:65)
04-28 09:09:27.844: E/AndroidRuntime(356): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
04-28 09:09:27.844: E/AndroidRuntime(356): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
04-28 09:09:27.844: E/AndroidRuntime(356): ... 11 more
04-28 09:09:30.614: I/global(356): Default buffer size used in BufferedReader constructor. It would be better to be explicit if an 8k-char buffer is required.
04-28 09:09:30.694: D/dalvikvm(356): GC_FOR_MALLOC freed 4997 objects / 321032 bytes in 73ms
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 13:13     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #8
NullPointerException MainActivity.java:65
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 13:33  [ТС]     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #9
Цитата Сообщение от V0v1k Посмотреть сообщение
NullPointerException MainActivity.java:65
так я и говорю, ошибка. Что делать то?
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 13:38     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #10
не обращаться к не инициализированной переменой.
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 13:54  [ТС]     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #11
Цитата Сообщение от V0v1k Посмотреть сообщение
не обращаться к не инициализированной переменой.
Так она проинициализирована.

Java
1
2
3
4
5
6
7
8
9
10
11
12
Button button;
 
 
        button = (Button) findViewById(R.id.Button01);
        
        button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                //textView.setText("text");
                
        
            }
        });



Вот таким образом я нажимаю на кнопку и срабатывает нажатие:

Java
1
2
3
4
5
6
7
8
9
public void onMyButtonClick(View v) {
        // создаем и отображаем текстовое уведомление
        Toast toast = Toast.makeText(getApplicationContext(),
                "нажата кнопка!", Toast.LENGTH_SHORT);
        toast.setGravity(Gravity.CENTER, 0, 0);
        toast.show();
 
        startActivity(new Intent(this, Activity2.class));
    }
но как мне узнать на каком iteme она нажата?
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 14:06     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #12
Цитата Сообщение от Stylish2013 Посмотреть сообщение
Так она проинициализирована.
нет, она null.

Цитата Сообщение от Stylish2013 Посмотреть сообщение
но как мне узнать на каком iteme она нажата?
при добавление кнопки можете в tag записать позицию:
Java
1
button.setTag(position);
потом в onMyButtonClick:
Java
1
v.getTag();
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 14:15  [ТС]     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #13
Цитата Сообщение от V0v1k Посмотреть сообщение
нет, она null.
да она null, но почему она не инициализируется?





Цитата Сообщение от V0v1k Посмотреть сообщение
при добавление кнопки можете в tag записать позицию:
Код Java(TM) 2 Platform Standard Edition 5.0
1
button.setTag(position);
потом в onMyButtonClick:
Код Java(TM) 2 Platform Standard Edition 5.0
1
v.getTag();
не пойму куда это писать везде ругается...
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 14:21     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #14
Цитата Сообщение от Stylish2013 Посмотреть сообщение
да она null, но почему она не инициализируется?
потому, что ее нет в этот момент на лаяуте.


Цитата Сообщение от Stylish2013 Посмотреть сообщение
не пойму куда это писать везде ругается...
setTag там, где добавляете button на лаяут, а getTag в onMyButtonClick.
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 14:46  [ТС]     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #15
Я извиняюсь за тупление....

Цитата Сообщение от V0v1k Посмотреть сообщение
потому, что ее нет в этот момент на лаяуте.
А где она может быть?
Цитата Сообщение от V0v1k Посмотреть сообщение
setTag там, где добавляете button на лаяут,
Так я его нигде не добавляю он работает просто через onMyButtonClick.
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 15:19     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #16
Цитата Сообщение от Stylish2013 Посмотреть сообщение
А где она может быть?
негде, она еще не добавлена.


Цитата Сообщение от Stylish2013 Посмотреть сообщение
Так я его нигде не добавляю
она по волшебству появляется?
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 15:21  [ТС]     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #17
Вообще запутался
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 15:23     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #18
учите основы, если вы не разбираетесь в своем коде, то мне откуда знать что вы там понаписывали.
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 15:40  [ТС]     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #19
Цитата Сообщение от V0v1k Посмотреть сообщение
учите основы, если вы не разбираетесь в своем коде, то мне откуда знать что вы там понаписывали.
Понимаю... А вы не могли бы исправить мой проект если я скину его вам целиком??? Пожалуйста очень надо... очень... У вас на это уйдёт я уверен не очень много времени.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.04.2013, 15:49     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ?
Еще ссылки по теме:

Android Обработать нажатие на кнопки в уведомлении
Как обработать нажатие кнопки "Назад", чтобы открывался рекламный баннер? Android
Как по нажатию кнопки несколько раз выводить текст в TextView в Android Studio? Android
Android Как обработать нажатие на ImageView? Eclipse(android)
Как обработать нажатие на изображение в элементе listView? Android

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

Или воспользуйтесь поиском по форуму:
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 15:49     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ? #20
просто скопируйте сюда код.
Yandex
Объявления
28.04.2013, 15:49     Как в ListView обработать нажатие кнопки и изменить здесь же значение в textView ?
Ответ Создать тему
Опции темы

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