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

Потоки и AlertDialog - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android БД или xml http://www.cyberforum.ru/android-dev/thread899856.html
вообщем у меня есть маленькая игра, которая работает по такому принципу. Когда загружается первое активити, динамически создается xml с данными, потом уже во время игры используется. Так как мне...
Программирование Android Парсинг XML Пробую так String data = getIntent().getStringExtra("data"); try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder =... http://www.cyberforum.ru/android-dev/thread899458.html
Программирование Android Оптимизация кода
Глупый и очень обширный вопрос, но как оптимизировать код? У меня есть приложение, которое занимает озу телефона около 30 Мб, приложение, в котором одна активити с картой, на неё при запуске...
Выгрузка в excel Программирование Android
Здравствуйте. Заинтересовался темой выгрузки информации в excel файл. То есть создание файла, наполнение нужными листами и данными в ячейках. Нашел инфу про библиотеку JExcelAPI for Android. Даже...
Программирование Android Как программно взять диагональ экрана андроид устройства? http://www.cyberforum.ru/android-dev/thread899074.html
Помогите, пожалуйста, определить к какому drawable (mdpi, hdpi, xdpi...) относится используемый аппарат, естественно кодом.
Программирование Android Изменение Title Bar Не нашел в интернете хорошего мануала, как можно изменить внешний вид стандартного title bar в приложении. Например сделать его другого цвета, изменять надпись при необходимости, убрать иконку... подробнее

Показать сообщение отдельно
osin_pa
0 / 0 / 0
Регистрация: 13.06.2013
Сообщений: 12

Потоки и AlertDialog - Программирование Android

13.06.2013, 11:11. Просмотров 1952. Ответов 12
Метки (Все метки)

Помогите, пожалуйста, бьюсь уже несколько дней. Создаю файловый менеджер. Это моя первая программа под Android, поэтому не всегда догоняю.
Идея:
Пользователь вызывает контекстное меню и выбирает пункт "Информация".
Пока идет подсчет размера для выбранной папки отображается ProgressDialog.
Потом ProgressDialog закрывается и вызывается AlertDialog с инфой.

Код:

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
43
44
45
46
47
48
 @Override
    public boolean onContextItemSelected(MenuItem item) //нажатие кнопок контекстного меню
    {
        switch (item.getItemId())
        {
            case R.id.btnInfo: //инфа
            {
                final TextView txt = new TextView(FileManager.this);
                final ProgressDialog pd = new ProgressDialog(FileManager.this);
                pd.setMessage("Ждите");
                pd.show();
 
                Runnable thread = new Runnable()
                {
                    @Override
                    public void run()
                    {
                        //заполнеям TextView информацией
                        txt.setText("Название: " + selectFile.name + '\n' +
                                "Тип: " +
                                (selectFile.file.isDirectory()
                                        ?
                                        "папка" + '\n' +
                                                //подсчет размера папки
                                                "Размер: " + CalculateSize.getSize(CalculateSize.getLenghtFile(selectFile.file)) 
                                        :
                                        selectFile.type + '\n' +
                                                "Размер: " + selectFile.size
                                )
                        );
 
                        pd.cancel(); //закрываем ProgressDialog
 
                        new AlertDialog.Builder(FileManager.this) //здесь программа падает
                                .setView(txt)
                                .setPositiveButton(R.string.Ok, null)
                                .show();
                    }
                };
 
                new Thread(thread).start();
 
                return true;
            }
            default:
                return super.onContextItemSelected(item);
        }
    }
После вызова AlertDialog программа прекращает работу. Не могу понять почему, никаких эксепшенов не возникает. Или такие ситуации нужно как-то по другому делать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru