Урок 9. Обработчики событий на примере Button.

Обсуждение уроков
Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 9. Обработчики событий на примере Button.

Сообщение rezak90 » 22 мар 2013, 15:01

дорогие люди :) скажите что нужно сделать, а то так и не увидил поставленной задачи и как мне кажется вы общаетесь на разных языках, чётко поставте задачу и вам помогут
R.id.team
Политика на форуме запрещена

snowkam
Сообщения: 162
Зарегистрирован: 21 мар 2013, 11:22

Re: Урок 9. Обработчики событий на примере Button.

Сообщение snowkam » 22 мар 2013, 16:13

:roll: Мне показалось так. Есть тексвивер и кнопка. Если нажать и не отпускать кнопку то тексвивер должен отображать постоянно увеличивающиеся число. Когда отпускает кнопку то увеличение числа прекращается. Наверное так!

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 9. Обработчики событий на примере Button.

Сообщение rezak90 » 22 мар 2013, 16:53

snowkam писал(а)::roll: Мне показалось так. Есть тексвивер и кнопка. Если нажать и не отпускать кнопку то тексвивер должен отображать постоянно увеличивающиеся число. Когда отпускает кнопку то увеличение числа прекращается. Наверное так!
так число ж должно с каким то интервалом увеличивается?
R.id.team
Политика на форуме запрещена

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 9. Обработчики событий на примере Button.

Сообщение Foenix » 23 мар 2013, 13:18

Озорная Свинья писал(а):v типо объект view, грубо говоря: public void onClick(Button oclBtnCancel), ежели присвоить десяти кнопкам один и тот же обработчик OnClick, то по этой фигне можно понять какая из 10-ти кнопок кликнута, наверно :)
вы че, ребята.. oclBtnCancel - это переменная, ее имя, Button это тип. При этом в данном случае - это перечень локальных параметров (или еще одни являются входными) для данной процедуры.. Передать из глобальной процедуры сюда можно любую переменную типа Button.. А различить уже их в этой процедуре, извините, нельзя, разве что еще какие-то будут у баттона другие свойства, по которым можно отличить..
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 9. Обработчики событий на примере Button.

Сообщение rezak90 » 23 мар 2013, 14:22

А различить уже их в этой процедуре, извините, нельзя
id и tag у каждого свои, не?
R.id.team
Политика на форуме запрещена

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 9. Обработчики событий на примере Button.

Сообщение Foenix » 23 мар 2013, 19:57

rezak90 писал(а):
А различить уже их в этой процедуре, извините, нельзя
id и tag у каждого свои, не?
ну я про свойства писала
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

ScorpioN
Сообщения: 3
Зарегистрирован: 24 июн 2013, 22:12

Re: Урок 9. Обработчики событий на примере Button.

Сообщение ScorpioN » 24 июн 2013, 22:15

package com.example.study16;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;


public class MainActivity extends Activity {


private Object tvOut;
private Object BtnOk;
private Object BtnCancel;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tvOut = (TextView) findViewById(R.id.tvOut);
BtnOk = (Button) findViewById(R.id.btnOk);
BtnCancel = (Button) findViewById(R.id.btnCancel);

View.OnClickListener oclBtnOk = new View.OnClickListener() {
@Override
public void onClick(View view) {
tvOut.setText ("Нажата кнопка ОК"); !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
}
};

};


@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}

Gradle: error: cannot find symbol method setText(String) !!!! Help! :(

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 9. Обработчики событий на примере Button.

Сообщение rezak90 » 24 июн 2013, 22:17

private Object tvOut;
намёк понятен?
R.id.team
Политика на форуме запрещена

ScorpioN
Сообщения: 3
Зарегистрирован: 24 июн 2013, 22:12

Re: Урок 9. Обработчики событий на примере Button.

Сообщение ScorpioN » 24 июн 2013, 22:33

rezak90 писал(а):private Object tvOut;
намёк понятен?
Так?!
private Button BtnOk;
private Button BtnCancel;
private TextView tvOut;

еще вопрос такой, вместо "Нажата кнопка ОК" иероглифы, как поправить?

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 9. Обработчики событий на примере Button.

Сообщение rezak90 » 24 июн 2013, 23:11

ScorpioN писал(а): Так?!
private Button BtnOk;
private Button BtnCancel;
private TextView tvOut;
да
ScorpioN писал(а):еще вопрос такой, вместо "Нажата кнопка ОК" иероглифы, как поправить?
на устройстве русский в системе есть?
R.id.team
Политика на форуме запрещена

ScorpioN
Сообщения: 3
Зарегистрирован: 24 июн 2013, 22:12

Re: Урок 9. Обработчики событий на примере Button.

Сообщение ScorpioN » 24 июн 2013, 23:55

rezak90 писал(а):
ScorpioN писал(а): Так?!
private Button BtnOk;
private Button BtnCancel;
private TextView tvOut;
да
ScorpioN писал(а):еще вопрос такой, вместо "Нажата кнопка ОК" иероглифы, как поправить?
на устройстве русский в системе есть?
ДА!

agrach
Сообщения: 3
Зарегистрирован: 27 июн 2013, 11:49

Re: Урок 9. Обработчики событий на примере Button.

Сообщение agrach » 27 июн 2013, 11:54

Все скопипастил один в один.. а оно не рунится ((

Изображение

Аватара пользователя
klblk
Сообщения: 1097
Зарегистрирован: 18 окт 2012, 11:17
Откуда: г. Красноярск

Re: Урок 9. Обработчики событий на примере Button.

Сообщение klblk » 27 июн 2013, 12:28

package не хватает вроде бы...

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 9. Обработчики событий на примере Button.

Сообщение rezak90 » 27 июн 2013, 14:17

не вроде бы а так и есть, первое что в файле должно быть это package
R.id.team
Политика на форуме запрещена

agrach
Сообщения: 3
Зарегистрирован: 27 июн 2013, 11:49

Re: Урок 9. Обработчики событий на примере Button.

Сообщение agrach » 28 июн 2013, 08:21

не хватало
package ru.startandroid.develop.onclickbuttons;
спасибо!

Kolonist
Сообщения: 4
Зарегистрирован: 28 июн 2013, 09:01

Re: Урок 9. Обработчики событий на примере Button.

Сообщение Kolonist » 01 июл 2013, 14:41

Вот какой код программы получился у меня.
Все запускается, но при нажатии на Cancel, не меняется текст в TextView. (кнопка ОК работает нормально).
В чем моя ошибка?

Код: Выделить всё

package com.example.onclickbuttons;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends Activity {
 
   TextView tvOut;
   Button btnOk;
   Button btnCancel;
 
   /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.main);
 
     // найдем View-элементы
     tvOut = (TextView) findViewById(R.id.tvOut);
     btnOk = (Button) findViewById(R.id.btnOk);
     btnCancel = (Button) findViewById(R.id.btnCancel);

     // создаем обработчик нажатия
     OnClickListener oclBtnOk = new OnClickListener() {
       @Override
       public void onClick(View v) {
    	   
	     // Меняем текст в TextView (tvOut)
	     tvOut.setText("Нажата кнопка ОК");
       }
     };
     
     // присвоим обработчик кнопке OK (btnOk)
     btnOk.setOnClickListener(oclBtnOk);
     
     // создаем обработчик нажатия
     OnClickListener oclBtnCancel = new OnClickListener() {
         @Override
         public void onClick(View v) {
        	 
           // Меняем текст в TextView (tvOut)
           tvOut.setText("Нажата кнопка Cancel");
         }  
     };
     // присвоим обработчик кнопке Cancel (btnCancel)
     btnCancel.setOnClickListener(oclBtnCancel);
   }
}

Аватара пользователя
anber
Сообщения: 584
Зарегистрирован: 10 июн 2013, 15:05
Откуда: UA

Re: Урок 9. Обработчики событий на примере Button.

Сообщение anber » 01 июл 2013, 15:05

Kolonist писал(а):Вот какой код программы получился у меня.
Все запускается, но при нажатии на Cancel, не меняется текст в TextView. (кнопка ОК работает нормально).
В чем моя ошибка?
все верно. Покажи main.xml
Личные сообщения с просьбой ответить на форуме или написать программу я просто удаляю, если я в хорошем настроении. Если в плохом добавляю автора в черный список. По любым другим вопросам feel free to write to me.

Kolonist
Сообщения: 4
Зарегистрирован: 28 июн 2013, 09:01

Re: Урок 9. Обработчики событий на примере Button.

Сообщение Kolonist » 01 июл 2013, 15:49

Вот мой main.xml.
Ну собственно он же из урока - copy_past.
Я в нем ничего не менял.

Код: Выделить всё

<?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"
 android:orientation="horizontal">
<LinearLayout
 android:id="@+id/linearLayout1"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:layout_margin="30dp"
 android:orientation="vertical">
<TextView
 android:id="@+id/tvOut"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_gravity="center_horizontal"
 android:layout_marginBottom="50dp"
 android:text="TextView">
</TextView>
<Button
 android:id="@+id/btnOk"
 android:layout_width="100dp"
 android:layout_height="wrap_content"
 android:layout_gravity="center_horizontal"
 android:text="OK">
</Button>
<Button
 android:id="@+id/btnCancel"
 android:layout_width="100dp"
 android:layout_height="wrap_content"
 android:layout_gravity="center_horizontal"
 android:text="Cancel">
</Button>
</LinearLayout>
</LinearLayout>

Аватара пользователя
anber
Сообщения: 584
Зарегистрирован: 10 июн 2013, 15:05
Откуда: UA

Re: Урок 9. Обработчики событий на примере Button.

Сообщение anber » 01 июл 2013, 15:53

Kolonist писал(а):Вот мой main.xml.
Ну собственно он же из урока - copy_past.
Я в нем ничего не менял.
Я скопировал твой код из 2 твоих последних постов в новый проект, запустил и все работает.
Попробуй удалить с эмулятора твое приложение (1), закрыть среду разработки (2) и эмулятор (3) и перезапустить их.
Личные сообщения с просьбой ответить на форуме или написать программу я просто удаляю, если я в хорошем настроении. Если в плохом добавляю автора в черный список. По любым другим вопросам feel free to write to me.

Kolonist
Сообщения: 4
Зарегистрирован: 28 июн 2013, 09:01

Re: Урок 9. Обработчики событий на примере Button.

Сообщение Kolonist » 01 июл 2013, 16:20

anber писал(а): Я скопировал твой код из 2 твоих последних постов в новый проект, запустил и все работает.
Попробуй удалить с эмулятора твое приложение (1), закрыть среду разработки (2) и эмулятор (3) и перезапустить их.
Ох уж эти эмуляторы, действительно перезапуск Eclipse и эмулятора помогло.
В будущем надо наверное почеще перезапускать их, когда буду сталкиваться с подобными ошибками.
Хотя обидно, что дурит программа, а отдувается разработчик.


PS Спасибо за помощь!

Ответить