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

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

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

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

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

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

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

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

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

Как создать ListView с двумя TextView и работать с ними - Программирование Android
Как создать ListView с двумя TextView и работать с ними использую класс Adapter(Ну или чем то похожим если такое существует).

Как обработать нажатие на ImageView? - Программирование Android
Ребят, не пойму в чем ошибка, как обработать нажатие на картинку? public class MainActivity extends ActionBarActivity implements...

Как обработать нажатие ImageView - Программирование Android
Создаю программу на Андроиде. И сразу столкнулся с проблемой. Почему то не получается... Создаю три объекта ImageView, и надо при нажатии...

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
1159 / 983 / 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
1159 / 983 / 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
1159 / 983 / 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
1159 / 983 / 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
1159 / 983 / 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
1159 / 983 / 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
28.04.2013, 14:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.04.2013, 14:46
Привет! Вот еще темы с ответами:

Как программно изменить textview? - Программирование Android
Мне нужно изменить TextView на многострочный текст, используя переменную. . Пример ниже. String gtext = "elements/123.txt"; try...

Как программно изменить текст в TextView - Программирование Android
Как из MainNavigationActivity изменить текст в шапке меню? Там где текст @Android Studio@

Как изменить форму TextView элемента? - Программирование Android
как изменить форму ТеxtView элемента? Т.е у меня текст на полупрозрачном прямоугольном фоне. Как можно сделать прямоугольник другой...

Не получается обработать долгий клик по TextView - Программирование Android
Здравствуйте! Помогите понять/найти ошибку, пожалуйста! Не могу создать переменную типа TextView...


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

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

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