메뉴 건너뛰기

XEDITION

프로그램

 

WebView 개발을 하다보면, 가로/세로 화면모드로 전환시 WebView가 리로드되는 현상이 발생합니다.

이는 화면 전환에 따른 onCreate의 재호출 되기 때문입니다.

이런 경우 회전시 리로드를 막는 방법은 매우 간답하니다.

 

AndroidManifast.xml

<manifest
	xmlns:android="http://schemas.android.com/apk/res/android"
    ...
    >
    <application
        ...
        >
        <activity
            android:name=".MainActivity"
            android:configChanges="orientation|keyboardHidden|screenSize"
            ...
            >
            ...
        </activity>
    </application>
</manifest>

 

해당 파일에서 <activity> 내에

 

android:configChanges="orientation|keyboardHidden|screenSize"

 

해당 라인을 추가하면 화면모드 전환시에도 웹뷰등이 리로드 되는것을 막을 수 있습니다.

출처: https://royzero.tistory.com/31 [로이의 개발공장:티스토리]

 

 

1. AndroidManifest.xml의 activity에 다음 항목을 추가

android:configChanges="orientation|screenSize"

만약 screensize가 설정되어있지 않는다면, 앱이 회전될 때마다 activity의 Oncreate함수가 불려지면서 다시 액티비티를 호출한다.

2. onConfiguratonChanged 오버라이드를 통해 가로, 세로일 때 처리

@Override public void onConfigurationChanged(Configuration newConfig){ super.onConfigurationChanged(newConfig); if(newConfig.orientation == Configuration.ORIENTATION_PORTPAIT){ //세로 전환시 //배경 화면 교체 처리 }else if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE)//가로 전환시{ //배경 화면 교체 처리 }

3. AndroidMainfest.xml에서 화면을 고정하는 방법

android:screenOrientation="ortait" //세로모드

android:screenOrientation="landscape" //가로모드

<activity android:name=".MainActivity" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>

4. Java 영역에서 화면을 고정 및 고정 센서 해체

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); //세로모드 고정 setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR); //화면 센서 활성화
번호 제목 글쓴이 날짜 조회 수
212 안드로이드 생체 인식 인증 샘플 file 묵묵이 2024.12.19 0
211 Webbrowser 버전은 아래와 같이 변경 묵묵이 2024.04.28 1
210 HttpURLConnection 이용한 통신 / 파일 다운로드 묵묵이 2024.03.14 0
209 [Spring Boot] Gradle 로 빌드 하는 법 묵묵이 2024.02.08 0
208 Gradle 프로젝트 설정 묵묵이 2024.02.08 0
207 document.baseURI 를 지원하지 않는 이슈 묵묵이 2024.01.23 0
206 ios WkWebview 개발자 모드에서 로그를 볼수 없는 현상 묵묵이 2023.12.21 0
205 Cordova(코르도바) 설치, 프로젝트 생성 묵묵이 2023.12.14 0
204 웹뷰(WebView) 사용법 묵묵이 2023.12.13 0
203 안드로이드 기본값으로 휴대폰 기울기에 따라 자동회전 막기 묵묵이 2023.12.13 0
» 화면모드로 전환시 WebView가 리로드되는 현상 묵묵이 2023.12.13 0
201 xeni 엑셀 다운로드 관련 file 묵묵이 2023.12.08 2
200 CKeditor4 를 이용한 게시판 글쓰기 구현 및 사진 업로드 [1] 묵묵이 2023.11.23 1
199 Jenkins REST API 호출로 Job 생성/실행/결과조회 하기 묵묵이 2023.09.22 1
198 키보드 변경시 앱 재시동 현상 묵묵이 2023.09.09 0
197 Tomcat(톰캣)에서 HTTP/2 (HTTP 2.0) 사용하기 묵묵이 2023.08.08 7
196 Eclipse Git Merge Conflict 해결 방법 [1] 묵묵이 2023.07.27 1
195 유튜브 무료 영화 묵묵이 2023.07.24 0
194 Git 줄 끝을 처리하도록 Git 구성 2 [2] 묵묵이 2023.07.20 2
193 빌라가배 Villagabae - 풀빌라 거제 묵묵이 2023.07.18 0
위로