Урок 10. Оптимизируем реализацию обработчиков.

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

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение rezak90 » 23 июн 2013, 14:19

У Вас обработчик oclBtn не объявлен.
R.id.team
Политика на форуме запрещена

Dmitriy
Сообщения: 4
Зарегистрирован: 23 июн 2013, 14:06

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение Dmitriy » 23 июн 2013, 14:24

А как это сделать, расскажите пожалуйста в кратции, этого небыло в видеоуроках

Dmitriy
Сообщения: 4
Зарегистрирован: 23 июн 2013, 14:06

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение Dmitriy » 23 июн 2013, 14:37

и так же во второй части урока, всё по инструкции, и когда нажал CTRL+SHIFT+O- то снизу осталось ещё 3 строки выделенные ошибкой. хелп!!!
Вложения
Screenshot-743.jpg
Screenshot-743.jpg (203.68 КБ) 16655 просмотров
Screenshot-741.jpg
Screenshot-741.jpg (200.99 КБ) 16655 просмотров
Screenshot-740.jpg
Screenshot-740.jpg (196.07 КБ) 16655 просмотров

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

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение rezak90 » 23 июн 2013, 14:39

Dmitriy писал(а):А как это сделать, расскажите пожалуйста в кратции, этого небыло в видеоуроках
было, Вы просто не досмотрели, перед oclBtn поставьте его тип OnClickListener:

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

// создание обработчика
     OnClickListener oclBtn = new OnClickListener() {
       @Override
       public void onClick(View v) {
         // TODO Auto-generated method stub
 
       }
     };
R.id.team
Политика на форуме запрещена

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

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение rezak90 » 23 июн 2013, 14:43

и так же во второй части урока, всё по инструкции, и когда нажал CTRL+SHIFT+O- то снизу осталось ещё 3 строки выделенные ошибкой. хелп!!!
причём здесь комбинация клавиш "CTRL+SHIFT+O"? если Eclipse намекает на то что Вы наследуетесь от интерфейса но не определяете его метода. Id (которые три строчки) у вас не определены в лейауте или просто не сгенерировался R файл. Читайте внимательней урок, и меньше копируйте код а пишите его сами.
R.id.team
Политика на форуме запрещена

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

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение Foenix » 23 июн 2013, 14:45

скриншоты нужно делать больше, а то плохо видно, а шрифт выбирать желтый на синем жирный курсив номер 6 - для убедительности.
R.id.team

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

Dmitriy
Сообщения: 4
Зарегистрирован: 23 июн 2013, 14:06

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение Dmitriy » 23 июн 2013, 14:47

Спасибо большое, помогли)
но если я исправил обработчик- то эти ошибки разве не должны исчезнуть?
Вложения
снимок 1234124.JPG
снимок 1234124.JPG (73.45 КБ) 16650 просмотров

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

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение rezak90 » 23 июн 2013, 14:59

Вы хоть читайте что за ошибки пишет Eclipse. У Вас в интерфейсе OnClickListener уже три метода с одинаковым названием onClick. Оставьте средний.
R.id.team
Политика на форуме запрещена

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

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение Foenix » 23 июн 2013, 15:14

Дмитрий, наводите курсор на ошибку, оно вам скажет ошибку, а если поставить курсор туда и нажать Ctrl+1, то скажет что делать.. хоть какие-то варианты будут..
R.id.team

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

omega78rus
Сообщения: 5
Зарегистрирован: 26 июн 2013, 15:30

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение omega78rus » 26 июн 2013, 15:36

Здравствуйте возникла проблема

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

package ru.startandroid.p0102_activitylistener;

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 implements OnClickListener {
	 
	   TextView tvOut;
	   Button btnOk;
	   Button btnCancel;
	   Button btnPogoda;
	 
	   /** 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);
	     btnPogoda = (Button) findViewById(R.id.btnPogoda);
	 
	     // присваиваем обработчик кнопкам
	     btnOk.setOnClickListener(this);
	     btnCancel.setOnClickListener(this);
	     btnPogoda.setOnClickListener(this);
	   }
	 
	   @Override
	   public void onClick(View v) {
	     // по id определеяем кнопку, вызвавшую этот обработчик
	     switch (v.getId()) {
	     case R.id.btnOk:
	       // кнопка ОК
	       tvOut.setText("Нажата кнопка ОК");
	       break;
	     case R.id.btnCancel:
	       // кнопка Cancel
	       tvOut.setText("Нажата кнопка Cancel");
	       break;
	     case R.id.btnPogoda:
	       //knopka Pogoda
	       tvOut.setText("Нажата кнопка Pogoda");
	       break;
	     }
	   }
	 
	 }
Error: main cannot be resolved or is not a field что посоветуете?

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

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение anber » 26 июн 2013, 16:24

omega78rus писал(а):Error: main cannot be resolved or is not a field что посоветуете?
Ошибка возникает тут?
setContentView(R.layout.main);
Скорее всего в каталоге res/layout/ отсутствует файл под названием main.xml
Личные сообщения с просьбой ответить на форуме или написать программу я просто удаляю, если я в хорошем настроении. Если в плохом добавляю автора в черный список. По любым другим вопросам feel free to write to me.

omega78rus
Сообщения: 5
Зарегистрирован: 26 июн 2013, 15:30

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение omega78rus » 26 июн 2013, 17:25

как исправить эту ошибку, недавно начал изучать разработку java for android.

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

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение anber » 26 июн 2013, 17:32

omega78rus писал(а):как исправить эту ошибку, недавно начал изучать разработку java for android.
Если файл main.xml отсутствует, то создать его. Содержимое приведено в начале урока на соответствующей странице.
Личные сообщения с просьбой ответить на форуме или написать программу я просто удаляю, если я в хорошем настроении. Если в плохом добавляю автора в черный список. По любым другим вопросам feel free to write to me.

omega78rus
Сообщения: 5
Зарегистрирован: 26 июн 2013, 15:30

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение omega78rus » 26 июн 2013, 17:33

anber писал(а):
omega78rus писал(а):как исправить эту ошибку, недавно начал изучать разработку java for android.
Если файл main.xml отсутствует, то создать его. Содержимое приведено в начале урока на соответствующей странице.
main.xml создан

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

<?xml version="1.0" encoding="utf-8"?> 
	<LinearLayout 
		xmlns:android="http://schemas.android.com/apk/res/android" 
		android:layout_height="match_parent" 
		android:layout_width="match_parent" 
		android:orientation="horizontal"> 
		<LinearLayout 
			android:id="@+id/linearLayout1" 
			android:layout_height="match_parent" 
			android:orientation="vertical" 
			android:layout_width="match_parent" 
			android:layout_margin="30dp"> 
				<TextView 
					android:layout_width="wrap_content" 
					android:text="TextView" 
					android:layout_height="wrap_content" 
					android:id="@+id/tvOut" 
					android:layout_gravity="center_horizontal" 
					android:layout_marginBottom="50dp"> 
				</TextView> 
				<Button 
					android:layout_height="wrap_content" 
					android:layout_gravity="center_horizontal" 
					android:id="@+id/btnOk" 
					android:text="OK" 
					android:layout_width="100dp"> 
				</Button> 
				<Button 
					android:layout_height="wrap_content" 
					android:layout_gravity="center_horizontal" 
					android:id="@+id/btnCancel" 
					android:text="Cancel" 
					android:layout_width="100dp"> 
				</Button> 
				<Button
				 android:id="@+id/btnPogoda"
				 android:layout_width="100dp"
				 android:layout_height="wrap_content"
				 android:layout_gravity="center_horizontal"
				 android:text="Pogoda">
			 </Button>
		</LinearLayout> 
	</LinearLayout>

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

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение rezak90 » 26 июн 2013, 17:54

omega78rus писал(а):Error: main cannot be resolved or is not a field что посоветуете?
не хватает импорта R файла
R.id.team
Политика на форуме запрещена

omega78rus
Сообщения: 5
Зарегистрирован: 26 июн 2013, 15:30

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение omega78rus » 01 июл 2013, 12:22

rezak90 - Спасибо, разобрался.
Так же anber - Спасибо.
Оказалась очень простенькая ошибка, название файла было не main.xml, а Activity_main.xml. Всё заработало.

alexkov87
Сообщения: 3
Зарегистрирован: 09 июл 2013, 11:35

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение alexkov87 » 12 июл 2013, 13:40

Добрый день! Спасибо большое за уроки!
Столкнулся с проблемой. Сразу скажу, что все уроки пишу (не копи-пастю). В этом же мне упорно выдавало ошибку о том что R.id.btnOk и R.id.btnCancel в case'ах не являются константами. Проверил все несколько раз. Вылечилось только созданием нового проекта и полным копипастом из текстового урока :( Теперь всё запустилось.

То, что оно в конце концов запустилось — конечно радует, но может кто-то выскажет предположение, что это могло быть?

P.S. Прошу заранее извинить за глупый вопрос, я попутно смотрю ваши уроки по андроид и курс по джаве Юрия Ткача — так что ещё совсем новичок. Ещё раз Вам огромное спасибо, Виталий!

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

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение anber » 12 июл 2013, 13:46

alexkov87 писал(а):Добрый день! Спасибо большое за уроки!
Столкнулся с проблемой. Сразу скажу, что все уроки пишу (не копи-пастю). В этом же мне упорно выдавало ошибку о том что R.id.btnOk и R.id.btnCancel в case'ах не являются константами. Проверил все несколько раз. Вылечилось только созданием нового проекта и полным копипастом из текстового урока :( Теперь всё запустилось.

То, что оно в конце концов запустилось — конечно радует, но может кто-то выскажет предположение, что это могло быть?

P.S. Прошу заранее извинить за глупый вопрос, я попутно смотрю ваши уроки по андроид и курс по джаве Юрия Ткача — так что ещё совсем новичок. Ещё раз Вам огромное спасибо, Виталий!
Предположу что делаете уроки в Eclipse. Есть несколько вариантов:
1) на момент создания Java класса соответствующего XML еще не было, или в нем не существовало елементов R.id.btnOk итд.
2) XML уже были созданы и заполнены, но Eclipse об этом еще не знает. В таком случае можно нажать на проекте правой кнопкой мыши в выбрать Refresh а также в главном меню Project - Clean...
Личные сообщения с просьбой ответить на форуме или написать программу я просто удаляю, если я в хорошем настроении. Если в плохом добавляю автора в черный список. По любым другим вопросам feel free to write to me.

alexkov87
Сообщения: 3
Зарегистрирован: 09 июл 2013, 11:35

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение alexkov87 » 12 июл 2013, 14:07

anber, спасибо, что откликнулись!
Да eclipse, простите, что не уточнил (сам ненавижу "шоу экстрасенсов":)
Увлекся, скриншоты не сделал, а тот проект уже удалил.

1) Проверял, вряд ли;
2) Вот этого я не делал. В процессе написания оперирую только хоткеями Ctrl+Shift+O, ну и сохраняю всё.

Сейчас отпишу всё заново вручную и проверю с учетом Ваших поправок, Спасибо за помощь!

UPD Всё переписал вручную, всё работает! Наверное, причина была в 2). Добавил F5 в свой арсенал, спасибо :)

Аватара пользователя
mozilalvfg
Сообщения: 85
Зарегистрирован: 10 авг 2013, 18:46

Re: Урок 10. Оптимизируем реализацию обработчиков.

Сообщение mozilalvfg » 03 сен 2013, 00:42

не могу никак отловить afterTextChanged у EditText подскажите как реализовать
ошибка

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

FATAL EXCEPTION: main
        java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.ITBanket/com.ITBanket.banketdata}: java.lang.NullPointerException
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1891)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1992)
        at android.app.ActivityThread.access$600(ActivityThread.java:127)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1158)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:137)
        at android.app.ActivityThread.main(ActivityThread.java:4441)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:511)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
        at dalvik.system.NativeStart.main(Native Method)
        Caused by: java.lang.NullPointerException
        at android.app.Activity.findViewById(Activity.java:1794)
        at com.ITBanket.banketdata.<init>(banketdata.java:35)
        at java.lang.Class.newInstanceImpl(Native Method)
        at java.lang.Class.newInstance(Class.java:1319)
        at android.app.Instrumentation.newActivity(Instrumentation.java:1023)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1882)
        ... 11 more
Из средств, расширяющих сознание, я признаю только книги и немного пива!
____________________________________________________________________
IntelliJ IDEA 12. Win 7 x64 sp1
KSWEB: сервер + PHP + MySQL FREE
Изображение

Ответить