Nuke Olaf - Log Store
[Android] 안드로이드 - 다이얼로그로 웹 뷰 띄우기 본문
AlertDialog Builder 의 setView() 를 사용해서 다이얼로그 안에 웹 뷰를 보여줄 수 있다.
private fun showWebViewDialog(url: String) {
val webView = WebView(this).apply {
loadUrl(url)
webViewClient = object : WebViewClient() {
override fun shouldOverrideUrlLoading(view: WebView?, url: String?): Boolean {
view!!.loadUrl(url)
return true
}
}
}
AlertDialog.Builder(this@MainActivity)
.setTitle("WebView")
.setView(webView)
.setNegativeButton("취소") { dialog, _ ->
dialog.dismiss()
}
.show()
}
webViewClient 의 shouldOverrideUrlLoading() 함수는
WebView 안에서 웹 페이지를 돌아다녀야 하는 경우
새로운 URL이 webview에 로드되려 할 경우 컨트롤을 대신할 기회를 준다.
참고 사이트 >>>
https://stackoverflow.com/questions/9172805/android-webview-inside-dialog-or-popup
<WebViewClient 관련 참고>
https://cofs.tistory.com/186
<웹 뷰 구현 관련 참고>
https://jerryjerryjerry.tistory.com/72
'Android' 카테고리의 다른 글
[Android] 안드로이드 - 액티비티 중복 실행 방지 (0) | 2020.05.08 |
---|---|
[Android] 안드로이드 카카오 로그아웃/탈퇴 코드 (0) | 2020.05.08 |
[Android] 안드로이드 - 앱 종료, 재시작 (0) | 2020.05.08 |
[Android] - 안드로이드 리사이클러뷰 무한 스크롤 (Infinite/Endless Scroll) (0) | 2020.05.06 |
[Android] 안드로이드 - 리사이클러뷰 스크롤 상태저장 (0) | 2020.05.06 |
Comments