Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.76/41: Рейтинг темы: голосов - 41, средняя оценка - 4.76
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
1

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

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

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

Как обработать нажатие на изображение в элементе listView?
Как все знают, listView делится на множество элементов, нажатия на них можно...

Как изменить цвет TextView в виджете нажатием кнопки?
Здравствуйте. Я сделал виджет с часами, но мне нужно сделать так чтобы в...

Обработать нажатие на кнопки в уведомлении
Еще раз здравствуйте. Дело такое. Есть уведомление, в нем две кнопки. Они...

Программно изменить TextView и остановить таймер в ListView с multiple CountDownTimer
Как по событию финишировать таймер и поменять TextView (tvStateClose и...

Как обработать нажатие кнопки "Назад", чтобы открывался рекламный баннер?
Требуется помощь. Начал осваивать это все недавно. Расскажу суть идеи: создав...

43
dubok79
28.04.2013, 01:12
  #2

Не по теме:

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

0
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 01:56  [ТС] 3
Цитата Сообщение от dubok79 Посмотреть сообщение

Не по теме:

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

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


Цитата Сообщение от Stylish2013 Посмотреть сообщение
И у меня в листвью много записей и мне нужно чтобы каждая кнопка на листвью выполняла разные действия. а не одно и тоже.
не вижу проблемы.
0
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 13:12  [ТС] 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
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 13:13 8
NullPointerException MainActivity.java:65
0
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 13:33  [ТС] 9
Цитата Сообщение от V0v1k Посмотреть сообщение
NullPointerException MainActivity.java:65
так я и говорю, ошибка. Что делать то?
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 13:38 10
не обращаться к не инициализированной переменой.
0
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 13:54  [ТС] 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 она нажата?
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 14:06 12
Цитата Сообщение от Stylish2013 Посмотреть сообщение
Так она проинициализирована.
нет, она null.

Цитата Сообщение от Stylish2013 Посмотреть сообщение
но как мне узнать на каком iteme она нажата?
при добавление кнопки можете в tag записать позицию:
Java
1
button.setTag(position);
потом в onMyButtonClick:
Java
1
v.getTag();
0
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
28.04.2013, 14:15  [ТС] 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();
не пойму куда это писать везде ругается...
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.04.2013, 14:21 14
Цитата Сообщение от Stylish2013 Посмотреть сообщение
да она null, но почему она не инициализируется?
потому, что ее нет в этот момент на лаяуте.


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

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


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

ListView после обновлений данных также обратно через нажатие кнопки вернуть старые данные назад
Я работаю с ассортиментом для продаж ,которого JSON файла сохраняю локально.В...

Как создать ListView с двумя TextView и работать с ними
Как создать ListView с двумя TextView и работать с ними использую класс...

Как обработать нажатие на ImageView?
Ребят, не пойму в чем ошибка, как обработать нажатие на картинку? public...


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

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

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