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

Не получается открыть диалоговое окно, созданное в отдельном классе - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Автоклик и автоскрин на андроиде http://www.cyberforum.ru/android-dev/thread1778100.html
Нужно приложение работающее в фоне, которое б нажимала бы автоматически на кнопку всплывающую от другого приложения (автоклик), понятно по анализу и распознованию элемента на экране. И нужно так...
Программирование Android Обработчик кнопки не работает - приложение компилируется, но крашится при запуске Всем привет! Собственно, проблема: у меня получилось сделать udp-listener за пару вечеров - слава яйцам! Теперь я захотел добавить туда кнопку - нужно инкриментировать значение счётчика по... http://www.cyberforum.ru/android-dev/thread1778098.html
CollapsingToolbarLayout Программирование Android
Добрый вечер. Вот xml структура <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent"...
Отправить файл на сервер Программирование Android
Всем привет! Первый раз пишу на форуме, уже несколько дней бился над отправкой файла на сервер, но никак не получается. Приведите пожалуйста пример кода для отправки и принятия на сервере (PHP), или...
Программирование Android Не импортируется AppCompatDelegate http://www.cyberforum.ru/android-dev/thread1777925.html
Всем привет. Не видит android.support.v7.app.AppCompatDelegate В чем может быть проблема? Добавлено через 8 минут Короче, решение нашел оказывается еще давно, просто инвалидэйт забыл сделать....
Программирование Android Сделать программу переводчик Подскажите, пожалуйста, какие-либо туториалы, где можно стоздать простейший переводчик. Спасибо подробнее

Показать сообщение отдельно
+1
122 / 93 / 9
Регистрация: 24.08.2010
Сообщений: 678

Не получается открыть диалоговое окно, созданное в отдельном классе - Программирование Android

09.07.2016, 15:41. Просмотров 170. Ответов 1
Метки (Все метки)

Всем привет!
Учусь программировать под андроид, еще почти ничего не понимаю.
Пробую урок отсюда.
Пытаюсь вызвать диалоговое окно по нажатию кнопки "домой".
Закомментированный диалог "покормите кота" успешно работает.
А вот диалог, созданный в классе не открывается.
Просто затемняется экран и всё.
Из примера урока я попытался убрать всё "лишнее", может чего нужное зацепил?
Заметил, что в DialogScreen.java
Не получается открыть диалоговое окно, созданное в отдельном классе
Что я делаю не так?

Главное активити TabooActivity.java:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package com.example.doc.taboo;
 
// много import
 
public class TabooActivity extends Activity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }
 
    @Override
    public void onBackPressed() {
        AlertDialog.Builder builder = new AlertDialog.Builder(this, DialogScreen.IDD_SETTINGS);
        AlertDialog dialog = builder.create();
        dialog.show();
        
        /*
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("Важное сообщение!")
                .setMessage("Покормите кота!")
                .setCancelable(false)
                .setNegativeButton("ОК, иду на кухню",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int id) {
                                dialog.cancel();
                            }
                        });
        AlertDialog alert = builder.create();
        alert.show();
        */
    }
}
DialogScreen.java:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package com.example.doc.taboo;
 
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.view.View;
 
public class DialogScreen {
 
    public static final int IDD_ABOUT = 1; // Идентификаторы диалоговых окон
    public static final int IDD_SETTINGS = 2;
    public static final int IDD_RATE = 3;
 
    public static AlertDialog getDialog(final Activity TabooActivity, int ID) {
        AlertDialog.Builder builder = new AlertDialog.Builder(TabooActivity);
 
        switch(ID) {
            case IDD_ABOUT:
                return builder.create();
            case IDD_RATE:
                return builder.create();
            case IDD_SETTINGS: // Диалог настроек
                View view = TabooActivity.getLayoutInflater().inflate(R.layout.settings, null); // Получаем layout по его ID
                builder.setView(view);
                builder.setTitle(R.string.dialog_settings_title);
                builder.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { // Кнопка ОК
                    public void onClick(DialogInterface dialog, int whichButton) {
                       // TabooActivity.doSaveSettings(); // Переход в сохранение настроек MainActivity
                        dialog.dismiss();
                    }
                });
                builder.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { // Кнопка Отмена
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.dismiss();
                    }
                });
                return builder.create();
            default:
                return null;
        }
    }
}
settings.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
 
 
<TextView
    android:id="@+id/textVol"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_marginTop="20dp"
    android:text="@string/dialog_settings_vol"
    android:textAppearance="?android:attr/textAppearanceMedium" />
 
<TextView
    android:id="@+id/textSense"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:text="@string/dialog_settings_sense"
    android:textAppearance="?android:attr/textAppearanceMedium" />
 
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="ok"
        android:id="@+id/ok"
        android:layout_below="@+id/textVol"
        android:layout_alignRight="@+id/textVol"
        android:layout_alignEnd="@+id/textVol"
        android:layout_marginTop="50dp" />
 
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="cancel"
        android:id="@+id/cancel"
        android:layout_alignTop="@+id/ok"
        android:layout_toRightOf="@+id/ok"
        android:layout_toEndOf="@+id/ok" />
 
 
</RelativeLayout>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru