Android 개발 중 WebView 의 간단 한 사용 소결
WebView(네트워크 보기)는 Andorid 에서 웹 페이지 를 표시 하 는 데 사 용 됩 니 다.어떻게 사용 하 는 지 살 펴 보 겠 습 니 다.
기본 사용
1.성명 권한,WebView 는 네트워크 를 사용 할 수 밖 에 없습니다.저 희 는 네트워크 접근 권한 을 추가 해 야 합 니 다.
<uses-permission android:name="android.permission.INTERNET"/>
2.레이아웃 넣 기
<WebView android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/web">
3.Activity 에서 인용
private WebView webView;
webView = (WebView) findViewById(R.id.web);
webView.loadUrl("http://piaoshu.org");
//webView.loadUrl("file:///android_asset/xx.html"); html
이 때 응용 프로그램 이 자동 으로 시스템 이나 제3자 브 라 우 저 에서 벗 어 나 는 것 을 발견 할 수 있 습 니 다.즉,자신의 응용 프로그램 에 자신의 웹 페이지 를 표시 할 수 없다 는 것 입 니 다.어 떡 하지?다음은 웹 뷰 의 두 가지 중요 한 감청 사건 을 소개 한다.2.WebViewClient 와 WebChromeClient
4.567914.주로 웹 페이지 를 불 러 오 는 과정 에 대한 감청 에 사용 된다.
webView.setWebViewClient(new WebViewClient(){
@Override
// ,
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;// true WebView , false
}
@Override
public void onReceivedError(WebView view, int errorCode,
String description, String failingUrl) {
// , .
// 404 , html asset , webView 。
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPagStarted(view, url, favicon);
// ,
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
// ,
}
}
);
4.567914.주로 웹 페이지 를 불 러 오 는 과정 에서 UI 에 대한 작업 에 사 용 됩 니 다.
webView.setWebChromeClient(new WebChromeClient(){
@Override
public void onProgressChanged(WebView view, int newProgress) {
progressBar.setProgress(newProgress);
//newProgress 1 100 , ProgressBar ProgressDialog
}
}
@Override
public void onReceivedTitle(WebView view, String title) {
textView.setText(title);// title , textView 。
}
}
);
자,웹 페이지 로 딩 상황 을 살 펴 보 겠 습 니 다.웹 페이지 를 잘 불 러 온 것 같 지만,사실 나 는 이미 관련 속성 을 설정 했다.웹 뷰 에 어떤 속성 이 있 는 지 살 펴 보 겠 습 니 다.
3.웹 설정
WebSettings settings=webView.getSettings();
// JavaScript
settings.setJavaScriptEnabled(true);
// WebView
settings.setUseWideViewPort(true);
//
settings.setBuiltInZoomControls(true);
// WebView
settings.setLoadWithOverviewMode(true);
//WebView
settings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
아직 속성 이 있 으 니 말 하지 않 겠 습 니 다.관심 있 는 사람 은 직접 찾 아 보 세 요.파일 다운로드
웹 뷰 에는 파일 을 다운로드 하 는 링크 가 포함 되 어 있 습 니 다.링크 를 클릭 하면 파일 이 로 컬 로 다운 로드 됩 니 다.어떻게 실현 합 니까?시스템 은 우리 에 게 다운로드 인 터 페 이 스 를 제공 합 니 다.DownloadListener 는 코드 가 간단 하고 편리 합 니 다.
우 리 는 이 인 터 페 이 스 를 실현 하고 재 작성 하 는 방법 을 만 들 면 Intent 를 통 해 시스템 의 브 라 우 저 를 호출 합 니 다.
class MyListenter implements DownloadListener{
@Override
public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength) {
Uri uri = Uri.parse(url); //url
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
}
}
모니터 설치 하 는 거 잊 지 마 세 요.
webView.setDownloadListener(new MyListenter());
우 리 는 제3자 브 라 우 저 를 빌려 다운로드 하 는데,이것 이 가장 간단 한 방법 이다.Android 다운 로드 를 클릭 하면 다음 과 같은 효과 가 나타 납 니 다.
또는 우 리 는 스 레 드 를 써 서 다운로드 할 수 있 습 니 다
webView.setWebViewClient()
방법 에서 스 레 드 를 시작 하면 됩 니 다.구체 적 인 코드 는 붙 이지 않 습 니 다.용법 을 총괄 하 다.
사용 하기 전에 설명 권한 을 기억 하 세 요.컨트롤 의 인용 은 말 할 필요 가 없습니다.
중점 은 웹 뷰 클 라 이언 트 와 웹 크롬 클 라 이언 트 두 종류 에 있다.
4.567914.주로 웹 페이지 를 불 러 오 는 과정 과 관련 된 작업 에 사용 된다.
4.567914.웹 페이지 를 불 러 오 는 과정 에서 UI 에 대한 작업 에 사 용 됩 니 다.
시스템 은 다운로드 인터페이스 인 DownloadListener 도 제공 합 니 다.
이상 은 이 글 의 전체 내용 입 니 다.여러분 의 학습 이나 업무 에 어느 정도 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주 십시오.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin의 기초 - 2부지난 글에서는 Kotlin이 무엇인지, Kotlin의 특징, Kotlin에서 변수 및 데이터 유형을 선언하는 방법과 같은 Kotlin의 기본 개념에 대해 배웠습니다. 유형 변환은 데이터 변수의 한 유형을 다른 데이터...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.