일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- https://tecoble.techcourse.co.kr/post/2021-08-07-logback-tutorial/
- https://minkwon4.tistory.com/161
- 국회의원 & 높으신 분들 어록
- Today
- Total
OPEN between Secret
안드로이드 방향전환에 대하여 본문
단말 방향 = 단말 방향이 바뀌면 액티비티를 메모리에서 없앤 후 새로 만든다
세로 방향과 가로 방향의 xml들을 따로따로 만들어두는게 좋다.
src/main/res/layout : 세로
src/main/res/layout-land : 가로
저 두 폴더 안에 같은 이름의 xml을 넣어두면 방향이 바뀔때 마다 세로방향이면 layout 에서 가로방향이면 layout-land 에서 알아서 xml을 읽어온다.
! 이 말은 세로 방향에서 가로방향으로 가면 메모리에서 activity를 지웠다가 다시 생성한다는것.
그렇다면 방향이 바뀌면 데이터가 사라지게 되는데 이때 이 데이터를 저장할수 있는 방법이 있음
!! onSaveInstanceState !!
onSaveInstanceState 메소드를 불러오면 bundle 객체를 갖고 오는데 이 bundle에다가 넣어주면 된다.
bundle.putString(key, value);
---------------------------
방향 전환시 꼭 activity를 새로 만들어야 할까 ?? 그렇지 않아도 됨
manifest에 설정을 하면 방향이 바뀌는걸 알수가 있음
!manifest
<activity android:name=""
android:configChanges="orientation|screenSize|keyboardHidden">
!activity
onConfigurationChanged(configuration nesConfig){}
if(newConfig.orientation == Configuration.OREINTATION_LANDSCAPE{
-> 가로방향 전환시 처리
} else if(newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {
-> 세로방향 전환시 처리
}
'T.N.V > 안드로이드' 카테고리의 다른 글
안드로이드 토스트 & 대화상자 & 프로그래스 (0) | 2017.12.29 |
---|---|
애플리케이션 구성하기 (0) | 2017.12.19 |
기본 위젯들 (0) | 2017.12.19 |
대표적 레이아웃 (0) | 2017.12.18 |