목록Android (7)
잘 정리해보자
1. WebViewClient : webView 사용해 html 링크 클릭, 링크 내용/예시/에러 등 랜더링 할 때 호출 (특정작업 제어권 확보 시 WebViewClient 함수를 따로 호출해야함) 2. WebChromeClient : 경고표시,윈도우 닫기 등 웹 브라우저 이벤트 구하기 위한 클래스, 웹 페이지 자체가 아니라 웹 페이지를 담은 틀, 크롬 브라우저 개념으로 특화됨. * WebView 속성 setJavaScriptCanOpenWindowsAutomatically : 웹 팝업창 띄울 때 필요 (window.open() 정상 동작을 위해서 필요) setUseWideViewPort : 웹뷰 wide viewport 사용 속성 (html 컨텐츠 웹뷰에 맞게 나타나도록 함) setSupportZoom..
앱 구성 시, 프로세스 중 라이프 사이클 관련 함수들을 호출하는데, 사용자가 현재 상태에서 다른 상태로 갈 경우 ( 현재 앱에서 다른앱이 끼어 들어올 경우 ) 를 대비해 현재앱의 상태를 변경해 충돌을 막는 것이 라이프 사이클 관련 함수를 호출하는 이유이다. 라이프 사이클 콜백 함수들 onCreate() -> onStart() -> onResume() onPause() -> onStop() -> onDestroy() -> onRestart() -> onStart() Resumed : background에 있던 activity를 forground로 현재화면에 부른다. Paused : activity를 back으로 옮긴다. ( 취소버튼 눌러서 앱이 화면에 나타나지 않음) Stopped : 완전히 backgro..
The SourceSet 'instrumentTest' is not recognized by the Android Gradle Plugin. Perhaps you misspelled something? build.gradle 에서 instrumentTest.setRoots('tests') 부분을 androidTest.setRoots('tests') 로 변환하여 해결 Gradle upgrade로 instrumentTest 은 사용안되며 androidTest으로 바꿔야 함. 참고 : http://kjyun.tistory.com/74
안드로이드 dx.jar에러 : 프로젝트 설정에서 컴파일러 버전이 1.7인지 1.8인지 확인 만약 1.7일 경우 안드로이드 8 버전은 사용하지 못해서 sdk27 이하로 설치해야 함. 우선 25.0.3 설치 (2018-02-23 작성)
안드로이드 빌드 시 Dalvic 에러 뜰 경우 프로젝트의 설정에서 jdk compiler 에서 1.8 인것을 1.7로 변경하면 된다 (2017-12-27 작성)
Layout : 뷰들을 담고 있는 그릇으로, 뷰들을 배치하는 역할 LinearLayout : 뷰가 가로 또는 세로로 순차적으로 나열되는 레이아웃 RelativeLayout : 따로 위치를 지정하지 않으면 뷰가 0,0 위치에 계속 쌓이는 레이아웃 (상대적으로 배치) FrameLayout : 같은 자리의 자식 뷰들을 겹치도록 놓고, VISIBLE, INVISIBLE, GONE 등의 옵션으로 교차하면서 보여줄 수 있음 tablelayout : 테이블 형태로 배치 gridlayout : 바둑판 모양으로 배치 tablayout : 탭으로 된 레이아웃 absolutelayout : 절대 위치로 배치 : 보려는 항목이 하나만 있을 경우 ( ex : ListView 하나만 넣는 경우) ------ | ㅇ | -----..
Context : 여러 activity 간 리소스를 공유하거나 설정등에 접근하기 위해 사용 -> Activity의 this로 받아올 수도 있지만, 직접 참조하는 this는 메모리릭(메모리 누수)를 발생시키므로 getApplicationContext() 메서드를 통해 받아오는 게 나음 getApplicationContext() : 어플리케이션의 context, 현재 Activity의 context , 앱의 lifeCycle에 해당하는 context까지 사용됨 (라이프사이클은 onDestroy되기 전까지 살아있음) getContext() : 현재 활성화 된(실행되고 있는) Activity의 context ( this와 같다) getBaseContext() : 다른 context를 접속하려 할 때 사용. co..