Создание собственных диалогов

Интерфейс, диалоги, темы, стили, меню
Ответить
Dorian
Сообщения: 3
Зарегистрирован: 08 дек 2013, 00:09
Контактная информация:

Создание собственных диалогов

Сообщение Dorian » 07 фев 2014, 01:29

Здравствуйте! При запуске на эмуляторе выдает ошибку "Unfortunately ExampleApp has stopped".

[syntax=java]import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;

public class CustomDialogApp extends Activity implements View.OnClickListener{
private static final int ID_D = 0;

@Override
public void onCreate(Bundle saveInstancedState){
super.onCreate(saveInstancedState);
setContentView(R.layout.main_layout);
}

@Override
public void onClick(View view) {
showDialog(ID_D);
}
protected Dialog onCreateDialog(int id){
switch (id){
case ID_D:
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.custom_layout, (ViewGroup) findViewById(R.id.toast_layout));

TextView text = (TextView) findViewById(R.id.textView);
text.setText("Are you sure you want to exit?");

ImageView image = (ImageView) findViewById(R.id.imageView);
image.setImageResource(R.drawable.icon);

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setView(layout);
builder.setMessage("Custom dialog");

builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
CustomDialogApp.this.finish();
}
});
builder.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.cancel();
}
});
builder.setCancelable(false);
return builder.create();
default: return null;
}
}
}
[/syntax]
Main Layout:
[syntax=xml]<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Custom Dialog!"
android:id="@+id/button"
android:onClick="onClick"/>
</LinearLayout>[/syntax]

Custom Layout:
[syntax=xml]<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ccc"
android:id="@+id/toast_layout"
android:padding="10dp">


<TextView
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="New Text"
android:textColor="#000"
android:id="@+id/textView"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:id="@+id/imageView"
android:layout_marginRight="10dp"/>
</LinearLayout>[/syntax]

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

Re: Создание собственных диалогов

Сообщение Foenix » 07 фев 2014, 06:54

если не догадался в лог глянуть - ищи ошибку сам!
R.id.team

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

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Создание собственных диалогов

Сообщение Mikhail_dev » 07 фев 2014, 13:27

Ну зачем же так строго? Можно человека ведь послать, например посмотреть вебинар
Вебинар 6. Аптечка хорошего разработчика. DDMS. Часть 1
В начале вебинара рассказывается как пользоваться инструментом LogCat.

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

Re: Создание собственных диалогов

Сообщение Foenix » 07 фев 2014, 13:41

просто я уже неоднократно это говорила, толку? каждый 2-й приходит и начинает говорить, что у него "упало"
Как другие соображают, они не задумываются.
R.id.team

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

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Создание собственных диалогов

Сообщение Mikhail_dev » 07 фев 2014, 13:43

А я собственно для этого и сделал вебинар и пару записей, дабы отсылать сразу людей к ним. Сложен логкат и понимание сути ошибки? Отлично, читаем мою заметку в моей подписи =) Всё, все вопросы решены :lol:
правда есть более сложные ошибки. в них да, уже можно поразбираться.

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

Re: Создание собственных диалогов

Сообщение Foenix » 07 фев 2014, 13:48

ок, ладно. Тогда ты ходи за всеми в темах и посылай на вебинары)) Должность вакантна
R.id.team

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

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Создание собственных диалогов

Сообщение Mikhail_dev » 07 фев 2014, 14:28

Omg!!! Можно подумать что ты свои вебинары делал по какой-то другой причине. Мы 100500 раз отсылаем людей по ссылкам на stackoverflow и так далее, с необходимым ответом. Чем тебя этот ответ не устроил?

Dorian
Сообщения: 3
Зарегистрирован: 08 дек 2013, 00:09
Контактная информация:

Re: Создание собственных диалогов

Сообщение Dorian » 08 фев 2014, 21:33

Была вот такая ошибка:

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

E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.IllegalStateException: Could not execute method of the activity
Дело в том, что в методе onCreateDialog() оно не хотело создавать TextView или ImageView. Когда убрал их с метода, то все заработало.
Просто я хотел использовать TextView и ImageView, чтобы добавить текст и картинку к моему диалогу.

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

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

Re: Создание собственных диалогов

Сообщение Foenix » 08 фев 2014, 21:45

то, что ты выделил, еще не то, куда нужно в первую очередеь смотреть в логе.
Тебе же сказали про вебинар .
или тут в каждой теме нужно выкладывать урок по программированию?
Так ты далеко не продвинешься, если будешь гадать на кофейной гуще. А
в логе написано конкретно.
R.id.team

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

Ответить