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

Как правильно вставить AlertDialog, если нет интернета? - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Экспорт apk в Android Studio http://www.cyberforum.ru/android-dev/thread1358344.html
Всем привет, ребят кто знает как экспортировать apk файл в Android Studio? Экспортировал как указано http://stackoverflow.com/questions/16622843/how-do-i-export-a-project-in-the-android-studio...
Программирование Android Загрузка/отгрузка файлов с авторизацией Авторизация - простой пост запрос с полями логина и пароля. Как войти перед тем как загружать файлы? И как их загружать? Пока что для загрузки аватарки использовал такую штуку URL url... http://www.cyberforum.ru/android-dev/thread1358263.html
Программирование Android Как обратиться к элементу (button) внутри пункта списка (ListView)
Здравствуйте! Помогите, пожалуйста Есть активити с ListView. В каждом пункте списка есть пару TextView и один Button. Как и где прописать к этой кнопки слушателя? Заранее спасибо!
Сделать видимой сетку у таблицы Программирование Android
Имеется TableLayout внутри которого TableRow с TextView-шками. Однако сетка/разделитель не видна между ячейками. Как-нибудь можно включить ее отображение?
Программирование Android Сервер на PHP или на Java? http://www.cyberforum.ru/android-dev/thread1358095.html
Что посоветуете? Хочу создать сервер на 10000 человек максимум (отправление небольших текстов), что лучше справиться?
Программирование Android Первое android приложение с доступом к серверу Есть сервер на php на котором написано: Привет Мир! Как создать приложение android чтобы он обратился к серверу и вывел это? подробнее

Показать сообщение отдельно
Kroshandowski
2 / 2 / 0
Регистрация: 05.04.2013
Сообщений: 234
21.01.2015, 19:14  [ТС]
CoolMind,Armagedo я где-то читал..по-моему на stackoverflow такой коммент (там чувак хотел сделать Asynctask в webview)
Don't use AsyncTask, as you are not in charge of loading the webview. If you want to show a progress dialog, here is how to do it.
И мало где можно найти примеры c AsyncTask...многие примеры содержат методы:
shouldOverrideUrlLoading
onLoadResource
onPageFinished

Может я чего-то не понимаю и это вполне легко сделать для тех,кто это уже полностью освоил или применял в своих приложениях.
Если идти по-порядку и собирать приложение по кускам вместе с вами,то думаю я получу,что изначально задумывалось.
Итак все возможные разрешения в манифесте уже есть.
Далее код который идет в onCreate:
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
@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.second);
        
        webview = (WebView) findViewById(R.id.webView);
        webview.getSettings().setJavaScriptEnabled(true);
        webview.setWebViewClient(new WebViewClient() {
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return true;
            }
            public void onLoadResource (WebView view, String url) {
                if (mProgressDialog == null) {
                    mProgressDialog = new ProgressDialog(Second.this);
                    mProgressDialog.setTitle("Открываем сайт");
                    mProgressDialog.setMessage("Пожалуйста подождите...");
                    mProgressDialog.show();
                }
            }
            public void onPageFinished(WebView view, String url) {
                if (mProgressDialog.isShowing()) {
                    mProgressDialog.dismiss();
                    mProgressDialog = null;
                }
            }
        });
        webview.loadUrl("file:///android_asset/index.html");
    }
Т.е. данный код подразумевает открытие html файла (да,для загрузки данного файла нужен инет) в независимости от того есть интернет или нет.
Как предлагал Armagedo и CoolMind можно сделать проверку на определение инета еще ДО загрузки всего контента.
Переписываем onLoadResource:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public void onLoadResource (WebView view, String url) {
                if (isConnected()) {
                    mProgressDialog = new ProgressDialog(Second.this);
                    mProgressDialog.setTitle("Открываем сайт");
                    mProgressDialog.setMessage("Пожалуйста подождите...");
                    mProgressDialog.show();
                }  else {
                    AlertDialog alertDialog = new AlertDialog.Builder(Second.this).create();
                    alertDialog.setTitle("Нет доступа в интернет!");
                    alertDialog.setMessage("Включите моб.данные и нажмите кнопку обновить");
                    alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int which) {
                            dialog.cancel();
                        }
                    });
                    alertDialog.show();
                }
            }
Получается isConnected определяет включен ли инет.
Теперь сам метод isConnected. В каком месте он должен быть?В самом низу или внутри кода?
И что должно находится в методе public static boolean isConnected(Context context)?
Вроде бы все написал,в чем были вопросы.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru