안드로이드 스튜디오 웹뷰( WebView)설정하기
- Android Studio
- 2020. 3. 13.
계발에서 개발까지
Android Studio WebView
웹뷰란?
웹 애플리케이션 또는 웹페이지만 클라이언트 애플리케이션의 일부로 제공하려는 경우 WebView를 사용하면 됩니다. WebView 클래스는 Android의 View 클래스의 확장으로, 웹페이지를 활동 레이아웃의 일부로 표시할 수 있게 해 줍니다. 탐색 컨트롤이나 주소 표시줄 등 완전히 개발된 웹브라우저의 기능은 전혀 포함되어 있지 않습니다. WebView의 모든 작업은 기본적으로 웹페이지를 표시하는 것입니다. 애플리케이션 내에서 웹을 보여줘야 하는 용도로 많이 사용합니다.
AndroidManifest.xml
매니패스트 설정하기
이 작업을 수행하려면 앱이 인터넷에 액세스 할 수 있어야 합니다. 인터넷 액세스 권한을 받으려면 manifest 파일에서 INTERNET 권한을 요청합니다.
<uses-permission android:name="android.permission.INTERNET" />
activity_main.xml
activity_main 설정하기
저는 버튼을 활용하여 버튼 클릭 시 웹뷰가 나타나도록 구현해보겠습니다.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical"
tools:context=".MainActivity">
<Button
android:id="@+id/WebView_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#2196F3"
android:text="웹뷰띄우기"
android:textSize="18dp"
android:textStyle="bold"
android:textColor="#fff" />
</LinearLayout>
간단하게 버튼 하나를 만들어 둡니다. 이제 버튼을 클릭하면 넘어갈 레이아웃과 웹뷰를 설정해줍니다.
activity_webview.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">
<WebView
android:id="@+id/webView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
/>
</LinearLayout>
MainActivity.java
메인 액티비티 설정
이제 버튼을 클릭하면 웹뷰 페이지로 넘어가도록 설정해줍니다.
자주 사용하는 버튼 이벤트와 인텐트를 활용해서 넘깁니다.
public class MainActivity extends AppCompatActivity {
private Button webview_btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
webview_btn = findViewById(R.id.WebView_btn);
webview_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(getApplicationContext(),WebViewActivity.class);
startActivity(intent);
}
});
}
}
WebViewActivity.java
웹뷰 액티비티 설정
WebViewActivity.java에서는 이제 웹뷰가 띄어지도록 설정해줍니다.
loadUrl에 원하시는 사이트 주소를 넣으시면 됩니다.
public class WebViewActivity extends AppCompatActivity {
private WebView mWebView; // 웹뷰 선언
private WebSettings mWebSettings; //웹뷰세팅
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_webview);
mWebView = (WebView) findViewById(R.id.webView);
mWebView.setWebViewClient(new WebViewClient());
mWebSettings = mWebView.getSettings();
mWebSettings.setJavaScriptEnabled(true);
mWebSettings.setLoadWithOverviewMode(true);
mWebSettings.setUseWideViewPort(true);
mWebSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
mWebSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);
mWebSettings.setDomStorageEnabled(true);
mWebView.loadUrl("http://deumdroid.tistory.com/");
}
}
'Android Studio' 카테고리의 다른 글
안드로이드 스튜디오 Bottom Navigation 구현하기 (3) | 2020.06.01 |
---|---|
안드로이드 스튜디오 구글 애드몹 보상형 광고 삽입하기 (0) | 2020.05.27 |
안드로이드 스튜디오 구글애드몹 네이티브 광고(Nativetemplates) 넣기 (1) | 2020.03.13 |
안드로이드 스튜디오 RecylerView and CheckBox , Delete (0) | 2020.03.07 |
안드로이드 스튜디오 BottomSheetDialog 하단 다이얼로그 적용 (0) | 2020.03.06 |