개발새발 - IT 기술블로그
article thumbnail
[안드로이드] 웹뷰(WebView)(2) - 접근과 제어
Android 2023. 1. 3. 16:43

안녕하세요. 이전 포스팅에 이어 웹뷰에 대해 계속 알아보겠습니다. 이전엔 웹뷰를 생성하여 페이지를 로드하는 것 까지 해봤다면, 이번 글에서는 앱에서 웹뷰에 접근하고 제어하는 기능에 대해 알아보겠습니다. 응용프로그램 제어(WebViewClient) 페이지의 방문 기록 탐색 구성 변경 처리 기타 제어 웹뷰를 생성하는 부분은 (1)번 포스팅을 참고하시기 바랍니다. 2022.12.26 - [안드로이드 Android] - [Android] 안드로이드 웹뷰(WebView)(1) - 앱 브라우저에서 호출 응용프로그램 제어 웹뷰에서 웹페이지를 호출할 때 웹 페이지에 의존하여 모든 동작과 제어를 맡길 수도 있지만, 앱에서 웹페이지에 접근하고 페이지의 생성소멸 상태를 인지하기 위해서는 WebViewClient의 메서드를 ..

article thumbnail
[안드로이드] 웹뷰(WebView)(1) - 앱 브라우저에서 호출
Android 2022. 12. 26. 17:25

안녕하세요. 이번 포스팅에서는 웹앱 혹은 하이브리드 앱을 만들 때 사용하는 웹뷰(WebView)를 통해, 웹페이지를 어플리케이션에 보여주는 방법에 대해 알아보겠습니다 😊 웹뷰는 안드로이드 프레임워크 내부 라이브러리로 따로 implementation은 필요하지 않습니다. 인터넷 페이지를 사용하기 때문에 manifest 파일에 인터넷 권한을 요청하는 코드를 넣어주시면 됩니다. 메인 액티비티에서 EditText에 URL을 입력하고, 버튼을 클릭하면 웹뷰 액티비티로 넘어가는 간단한 프로그램입니다. 그럼 코드부터 확인 하시겠습니다. 결과코드👀 package com.example.webviewexam import android.content.Intent import androidx.appcompat.app.AppC..

article thumbnail
[안드로이드] 아래에서 올라오는 다이얼로그 - BottomSheetDialogFragment
Android 2022. 12. 14. 11:47

안녕하세요. 이번 포스팅에서는 특정 이벤트를 발생시켰을 때 앱 하단에서 커스텀 다이얼로그가 올라오는 기능을 구현해 보도록 하겠습니다. 이번에도 코드부터 보여드려야죠😃 + 참고로 다이얼로그의 모서리를 둥글게 만드는 코드는 아래 설명부분에 있습니다! 결과 GIF🎬 결과코드👀 BottomSheetFragmentDialog는 material 라이브러리에서 제공하므로 implement 해줍니다. 프로젝트를 생성하면 기본으로 되어있으니 없는분들만 추가해주시면 될 것 같습니다. implementation 'com.google.android.material:material:1.7.0' MainActivity의 xml에서는 이벤트를 발생시킬 버튼 한개를 생성해주시면 됩니다. 코드는 생략하겠습니다. XML Kotlin p..

article thumbnail
[안드로이드] Spannable로 글자마다 다른 설정!
Android 2022. 12. 13. 18:05

안녕하세요. 이번 포스팅은 하나의 문자열에서 글자의 자릿수마다 다른 설정을 줄 수 있는 Spannable String에 대해서 알아보겠습니다. Spannable String은 안드로이드 프레임워크 내부에서 제공하는 기능이며, 사용방법이 굉장히 다양하기 때문에 이번 예제에서는 자주 사용되는 몇가지만 다뤄보도록 하겠습니다. 결과 코드👀 아래 코드는 spannable string이라는 하나의 문자열의 한 부분을 수정한 코드입니다. TextView textView = findViewById(R.id.textView); SpannableStringBuilder span = new SpannableStringBuilder("spannable string"); span.setSpan(new android.text.s..

article thumbnail
[Git] Commit 취소 및 되돌리기 - reset & revert
Git 2022. 12. 8. 17:59

Github로 버전관리를 하다보면 에러가 존재하는 코드 혹은 다른 파일을 commit 하는 실수가 발생 할 수 있습니다. 깃허브는 지금까지의 모든 commit을 push하기 때문에 잘못된 기록이 남는것을 막기 위해선 특정 commit을 지워줘야 하겠죠.  그럼 특정 commit을 되돌리는 방법에 대해 알아보겠습니다.  reset 주의!reset 명령어는 커밋한 기록 자체가 남지 않기 때문에 복구할 수 없습니다. 최대한 사용을 지양하며 revert 명령어의 사용을 권장합니다.   커밋 내역 확인하기git log  저는 아래 캡처와 같이 총 4개의 커밋을 진행했습니다.    최근 하나의 커밋 지우기git reset HEAD^  가장 최근 커밋인 fourth commit이 사라진걸 확인 할 수 있습니다.   ..

article thumbnail
[안드로이드] 에러 'compileDebugJavaWithJavac' task and 'compileDebugKotlin' task jvm target compatibility should be set to the same Java version. 해결
Android 2022. 12. 7. 13:32

Error 'compileDebugJavaWithJavac' task (current target is 11) and 'compileDebugKotlin' task (current target is 1.8) jvm target compatibility should be set to the same Java version. 작성코드👀 Android { ... compileOptions { sourceCompatibility JavaVersion.VERSION_11 targetCompatibility JavaVersion.VERSION_11 } kotlinOptions { jvmTarget='11' } ... } 자바 버전을 JavaVersion.VERSION_1_8(8)에서 JavaVersion.VERSI..

article thumbnail
[안드로이드] 네비게이션 바 없애기( + 몰입모드)
Android 2022. 12. 2. 15:53

작성코드👀 Java // 몰입모드로 전환됩니다 public void FullScreenMode() { getWindow().getDecorView().setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION ); } // 몰입모드에서 시스템 네비게이션바만 보여줍니다 private void ShowNavBarOnly() { getWindow().getDecorView().setSystemUiVisibi..