본문 바로가기

Android

[3일차]EditText 에디트텍스트hintinputType입력받을 키패드를 바꾸거나 자동으로 틀린걸 변화하거나 하는것 imOptions엔터키의 위치에 따라 입력받을 수있음, 사용자의 입력 키 배치에 관한 것. request포커스라고하는걸 넣을 수 있다. Tip!!!! 포커스를 받고 키패드를 띄우는 것은 menifest에 Activity안에 android:windowSoftInputMode에서 제어 할 수 있다. 상태는 statehidden,statevisible 등 이있다. 여기다가 포커스를 맞추는데 화면 전체를 밀어올리는걸 팬이라고 한다. menifast에 ex:) statevisible|adjustpanadjustPanadjustResize passwordview에 onEditchange 를 이용해 이벤트를하고 거기서 St.. 더보기
[3일차]레이아웃과 버튼들 리니어레이아웃 그리드 레이아웃 했다. 프레임 레이아웃 오로지 부모의 위치로만 구성할 때, 이런애들은 gravity하고 margin만 가진다. 뷰가 겹칠때, 5.0미만 kitkat까지는 먼저배치된애가 밑으로 간다. gone 과 visible은 많이 쓴다. elvation이 낮으면 큰게 위로간다. 프레임 레이아웃을 주로 쓰이는 것은 겹쳐보이는 화면을 배치 할 때 이다. 프레임 레이아웃은 사실 리레이티브레이아웃으로 만들수 있지만 느리다. 그래서 프레임 레이아웃을 쓴다. 스크롤뷰윈도우에 크기에 따라 뷰의 크기도 제약을 받는다. 리니어,리레이티브,프레임레이아웃은 스크롤 기능을 제공하지 않는다. 그래서 스크롤 뷰를 쓴다. 가로는 parent를 벗어나지 않지만 height는 만든다. 스크롤 뷰 안에 child는 알아.. 더보기
[2일차]기본 위젯과 레이아웃 윈도우(Window) - 일반적으로 앱의 화면이라고 한다. 그림을 그릴 수 있는 화면을 관리하고 사용자로 부터의 입력받을 수 있다. - 하나는 윈도우에 특정하게 그림그리는 기능 - 입력을 특수하게 처리하는기능 디스플레이 - 물리적 화면 모니터화면, 단말 화면 서피스(Surface) -시스템이 그림을 그릴수 있게 할당해주는것 -윈도우가 가지고 있으면서 화면에 그림을 그릴때 도화지 같은 역할을 하는 객체 뷰(View) - 하나는 윈도우에 특정하게 그림그리는 기능 - 입력을 특수하게 처리하는기능키 이벤트나 모션이벤트를 윈도우로부터 받아서 처리한다. 뷰그룹(View group) - 뷰를 차일드로 갖는 뷰 - 뷰를 상속하는 is-a관계이면서 has-a관계. 위젯(widget)어떻게 그리겠다. 하는 거에 따라 뷰를.. 더보기
[2일차]configuration Configuration로직은 같지만 환경에 따라 앱이 바뀌는 것. 글자나 디바이스크기, 다국어지원, 글자크기.수평과 수직방향 등. 환경에 따라 맞는 정보를 읽을 수 있는 메카니즘을 제공한다. 로직을 제외한 나머지일반적으로 사용자에게 인지되는 정보들.String ,Animation, 위치 등등.. 사용자에게 보여지는 글자는 단말의 환경과 관련된 것이다. 안로이드 다국어 지원 더보기
[2일차]안드로이드 Tip lint 자바문법적으로 문제가 없지만 구조적인 문제 때문에 빌드를 안해준다. ex:) 객체지향인데 getter/setter를 안쓰고, 직접 접근할때, 빌드 안해줌. File - setting - Editor - Inspections에 들어가서 이슈항목을 수정할 수있다. 자바 코드상에서 SuppressLint를 이용하여 이슈항목 체크를 제거 할 수있다. App Ober 65K Method 메소드의 개수가 65K(65,000)를 넘어갈 수없다. 오픈소스 몇개 쓰다보면 넘어갈수있다. 이럴때, build.gradle 안에 multiDexEnabled true dependencies안에 compile 'com.android.support:multidex:1.0.0' menifest안에 android:name="a.. 더보기
[2일차]안드로이드 빌드과정 Domain Specific Language 환경변수에 관한 명세. 이것도 랭귀지다. apk 빌더. 믈래스 파일 들을 dex로 변환 apk빌더가 리소스들을 같이 합쳐서 jar 파일은 menifest를 만든다. 달빅 vm이 아니라 바이너리코드로 변환해서 올라간다. 누군가 빌드뭐 하라고 해줘야 한다고 알려줘야 한다. 그게 gradle이다. 이 빌드 툴을 이욯해서 build 한다. gradlegradle은 한개만 있는게 아니라 프로젝트에 대한 gradle모듈에 대한 gradle 두개가 있다. 프로젝트에 대한 gradle - buildscript 빌드할때사용하는 스크립트 안에 repositories(저장소)에서 dependecies에 있는 걸 빌드할거야 allprojects에 j center()에 있는건 다 이.. 더보기
[2일차]액티비티 구성,액티비티 안에 함수 살펴보기 tiptiptiptip반복적으로 계속 봐야한다. 안드로이드 액티비티 안드로이드에서 화면은 window 라 한다. 화면자체를 관리하는 Class를 Activity 라한다. AppCompatActivity Activity상속 support library Fragment Fragment Activity상속 AppCompatActivity(ActionBar를 지원하려고) Activity 를 상속받으면 액션바를 사용할 수있으나, 하위버전에서는 지원을 하지 못해 appCompatActivity를 상속한다. onCreate()Activity가 구동되면 반드시 onCreate() 가 호출이 된다. Activity에 생성자와,attach를 호출하는 시점을 알수없다. 그래서 onCreate()가 다 갖춰지고 한번만 호출된.. 더보기
[1일차] 안드로이드 디버깅 소개 TraceViewDDMS를 띄어서 프로세스를 선택하고 나면 Start Method Profiling 누르면 메소드 호출때마다 정보를 수집한다. start메소드 프로파일링 데이터를 가지고 분석하는것성능이 어디서 느려지는지.. 그런것들을 보는것을 메소드 프로파일링 이라고 한다. 더보기
[1일차] 안드로이드 소개 안드로이드 특징 그래픽 엔진 - 실리콘 그래픽 라이브러리 sgl 그래픽엔진 Skia 점찍고 선그리고 그러는건 폰트엔진 - FreeType ttf,otf, 데이터 포맷을 가지고 다양한 크기로 나타내는엔진 웹렌더링 Webkit - 4.4 까지Chrome Network 보안 OpenSSL SSL -> TLS 라고 부름 이걸지원하는게 OpenSSL 개발환경Android StudioIntelligent 개발툴 저장소File, SQLite, SharedPreference 미디어거의 다 추가하드웨어카메라, 마이크,터치스크린, gps,근접센서,조도센서,가속도센서, 나침반센서, 자이로센서,온도센서,습도센서,STEP센서, 심박센서 이게다 배터리 때문이다. 안드로이드 플랫폼 계층을 나눠서 설명한다. 레이어드 아키텍쳐라고 한.. 더보기