Всем салют, друзья!
Продолжаем курс по Android:
Темы:
- Введение в программирование под Android
- Архитектура Android
- Установка Android Studio и настройка среды
- Пример Hello World - создание первого приложения для Android
- Базовый обзор приложения для Android
- WebView
- Выбор даты
- RatingBar
- Пример PopupWindow
- Проверьте подключение к Интернету
- SharedPreferences
- Управление сеансом с использованием SharedPreferences
- База данных SQLite
- База данных Realm
- Учебник по залпу
- Учебник Пикассо
- Библиотека изображений Glide
- Войти и зарегистрироваться с помощью Restful Web Services (Java + MySQL)
- Загрузить изображение на сервер с помощью Volley
- Push-уведомление с использованием Firebase Cloud Messaging (FCM)
- Преобразование изображения в строку Base64 или строку Base64 в изображение
- Приложение для чата в реальном времени с использованием Firebase
- 4 способа узнать текущую дату в Android
- Руководство по AdMob
- Потяните или проведите вниз, чтобы обновить, используя SwipeRefreshLayout
- Воспроизведение видео с URL-адреса с помощью VideoView
- Пример клиента SOAP с использованием ksoap2
- Как передавать данные из одного действия в другое
- Разбор XML с использованием XMLPullParser
- Как получить текущее местоположение с помощью диспетчера местоположения
- Учебное пособие по Google Maps API - Начало работы
- Разбор JSON из URL
- Загрузить изображение в хранилище Firebase
- Руководство по интеграции Google Analytics
- Учебник по фреске
- Панель навигации
Вступайте в группу - vk.com/mrsisadm - там больше интересного!!!
Открыть веб-адрес
Для открытия url-адреса мы используем метод loadURL() класса WebView. По умолчанию url-адрес открывается в браузере android. Поскольку мы должны открыть его внутри действия, мы должны предоставить наш собственный WebViewClient.
В этом примере действие состоит из трех компонентов пользовательского интерфейса, а именно EditText, Button и WebView. Когда пользователь введет url-адрес веб-сайта в edittext и нажмет на кнопку, то сайт откроется в webview.
Создайте android-проект с именем пакета thecrazyprogrammer.androidexample и добавьте следующий код в соответствующие файлы.
activity_main.xml
< ? xml version = "1.0" encoding = "utf-8" ? >
<LinearLayout xmlns: android = "http://schemas.android.com/apk/res/android"
android: layout_width = "match_parent" android: layout_height = "match_parent"
android: ориентация = "вертикаль" >
android: layout_width = " match_parent"
android: layout_height = "wrap_content"
android: id = "@+id/url"
android: hint = "введите url-адрес, чтобы открыть..." />
android: layout_width = " match_parent"
android: layout_height = "wrap_content"
android: text = "открыть"
android: id = "@+id/openBtn" />
android: layout_width = " match_parent"
android: layout_height = " match_parent"
android: id = "@+id/webView" />
</LinearLayout>
MainActivity.java
package thecrazyprogrammer . androidexample ;
import android . app . Activity ;
import android . os . Bundle ;
import android . view . View ;
import android . webkit . WebView ;
import android . webkit . WebViewClient ;
import android . widget . Button ;
import android . widget . EditText ;
public class MainActivity extends Activity {
WebView webView ;
Button openBtn ;
EditText url ;
@Override
protected void onCreate ( Bundle savedInstanceState ) {
super . onCreate ( savedInstanceState ) ;
setContentView ( R . layout . activity_main ) ;
webView = ( WebView ) findViewById ( R . id . webView ) ;
openBtn = ( Button ) findViewById ( R . id . openBtn ) ;
url = ( EditText ) findViewById ( R . id . url ) ;
openBtn . setOnClickListener ( new View . OnClickListener ( ) {
@Override
public void onClick ( View v ) {
webView . setWebViewClient ( new CustomWebClient ( ) ) ;
webView . loadUrl ( url . getText ( ) . toString ( ) ) ;
}
} ) ;
}
public class CustomWebClient extends WebViewClient
{
@Override
public boolean shouldOverrideUrlLoading ( WebView view , String url ) {
view . loadUrl ( url ) ;
return true ;
}
}
}
@Override
protected void onCreate ( Bundle savedInstanceState ) {
super . onCreate ( savedInstanceState ) ;
setContentView ( R . layout . activity_main ) ;
webView = ( WebView ) findViewById ( R . id . webView ) ;
openBtn = ( Button ) findViewById ( R . id . openBtn ) ;
url = ( EditText ) findViewById ( R . id . url ) ;
openBtn . setOnClickListener ( new View . OnClickListener ( ) {
@Override
public void onClick ( View v ) {
webView . setWebViewClient ( new CustomWebClient ( ) ) ;
webView . loadUrl ( url . getText ( ) . toString ( ) ) ;
}
} ) ;
}
public class CustomWebClient extends WebViewClient
{
@Override
public boolean shouldOverrideUrlLoading ( WebView view , String url ) {
view . loadUrl ( url ) ;
return true ;
}
}
}
Note: As we are fetching data from internet so we have to provide internet access permission. Just add following line in AndroidManifest.xml file.
1
<uses-permission android: name = "android.permission.INTERNET" />
Output
Показать HTML-данные
Метод loadData() класса WebView используется для отображения html-данных. Это можно сделать следующим образом.
Создайте android-проект с именем пакета thecrazyprogrammer.androidexample и добавьте следующий код в соответствующие файлы.
activity_main.xml
sion = "1.0" encoding = "utf-8" ? >
<LinearLayout xmlns: android = "http://schemas.android.com/apk/res/android"
android: layout_width = "match_parent" android: layout_height = "match_parent"
android: ориентация = "вертикаль" >
android: layout_width = " match_parent"
android: layout_height = " match_parent"
android: id = "@+id/webView" />
</LinearLayout>
MainActivity.java
package thecrazyprogrammer . androidexample ;
import android . app . Activity ;
import android . os . Bundle ;
import android . webkit . WebView ;
public class MainActivity extends Activity {
WebView webView ;
@Override
protected void onCreate ( Bundle savedInstanceState ) {
super . onCreate ( savedInstanceState ) ;
setContentView ( R . layout . activity_main ) ;
webView = ( WebView ) findViewById ( R . id . webView ) ;
webView . loadData ( "<h1>Android WebView Example</h1>" , "text/html" , "UTF-8" ) ;
}
}
Выход