[7일차] fragment 는 뷰가 아니라 controll이다. 프래그먼트를 잘 써야 된다. 프래그먼트 라이프사이클나는 화면이 이거야 하는 뷰를 가지고 있다. 액티비티 상태에 따라 프래그먼트 상태가 바뀐다. 액티비팅생성 이후 INITIalIZING 상태가 된다. Activity에서 onCreate상태에서는 onCreate 가 호출된다. Activity에서 onCreate상태이후 onCreateVeiw 가 호출된다. Api 18 부터 프래그먼트 안에 프래그먼트를 넣을 수 있다. 그걸 childfragment 매니져 라고 한다. 더보기 [7일차]메모리, Context 안드로이드 메모리 관리 방식 안드로이드에서 앱을 구동 시켰는데 , 메일만 쓰는게 아니니까 OM killer가 죽인다. 죽인다. 알림없이 확 죽인다. 사이코패스네 사이코패스네 그래서onSaveInstanceState를 호출해서 상태를 저장시킨다. 여기서 Bundle이라는 객체에 이걸 저장한다. 안드로이드 플랫폼이 제공하는 클래스들 ViewClass, Fragment 는 자신이 저장을 해놨다가 보여준다. view, progress,date는 저장해놨다 복원해준다. image는 복원안해준다. 그래서 수동으로 복원을 해줘야된다. 따로 변수를 만들어서 저장한 값들은 bundle에 저장을 해줘야된다. Acitivity - Application Application이라는 객체가 있는데 , 이거를 상속해서 쓸때가 있다.. 더보기 [7일차] 생명주기 생명주기 상태에따라 구현해야 하기때문에 상태를 알 필요가 있다. onCreate -> onResume->Activity Running-> onPause->onStop()-> onDestroy 일반적으로 onStart에서 불러옴.. 기능을 구현하면 상태에 따라 어디서 구현해야 할 지 정해야 한다. 어느시점에 일반적으로 onStop, 은 onStart onPause에서 onResume 에서 처리하는데 많지 않다 애니메이션은 onPause, onResume에서 갱신한다. 전달은 액티비티가 받지만 처리는 뷰가 먼저 처리한다. getIntent는 나를 생성한 인텐트 onNewIntent 예를들어서 탭 1,2,3 이 있을 때, 다른 화면에서 탭2,3을 호출할 때,액티비티에서 onNewIntent 에서 받아온다. 더보기 [7일차]task, 액티비티 속성, 인텐트 플래그 Task 예 : ) A회사 Project A,B,C,D가 있다. B라는 회사에 I라는 작업을 맡긴다. 그렇다면 B가하는 것도 공통 프로젝트이다. 여기서 프로젝트와 같은것은 안드로이드 Task라고 한다. 사용자가 볼때 하나의 앱이라고 느끼는 기능들의 묶음을 Task라고 한다. 반드시 하나의 앱으로 구성된것이 아니다. ex:) 갤러리나 카메라. 같은 Task에 있는 액티비티는 일반적으로 같은 쓰레드 안에서 처리된다. Task가 다른 액티비티를 호출하면 같은 Task다 라고 한다. task안에서 프로세스간 자원공유 ? 액티비티 기본속성 및 UI들카카오톡에서 노티를 누르면 바로 채팅화면나오고, 백키 누르면 채팅리스트나오는거, SingleTop 이라고 한다. 가장 상위에서 처음으로 갈때 처음 이외에 것들을 제거하.. 더보기 [6일차]인텐트로 데이터 주고 받기 인텐트의 구성요소 액션,데이터,category, extras와 플래그도 있는데 구동되는 애가 어떻게 구동했으면 좋겠는지 구동되는 방식. 액티비티에서 콜백함수를 정의한다. 액티비티 생성 oncreate 호출화면에 보여지면 onstart최상단이 되면 onresume 이런식의 콜백함수들을 정의해준다. onCreate 에서 일반적으로 하는일은 화면배치,객체생성, 기능 구현 아.. 액티비티를 만들어보겠습니다. 인텐트를 선언해서 startActivitiforresult putExtra 해서 보낸다. putExtra에는 다양한 데이터타입을 보낼수 있다. 자 ! 그러면 ~ 더보기 [6일차] 인텐트 어떤걸 띄우고 싶은 정보를 Intent라고 한다. 내가 띄우고 싶은 클래스의 객체 Activity Service Brodcast Receiver PakageName+ClassName 을 이용해서 띄운다. PakageName은 Context가 가지고 있다. 이걸로 Intent를 만들 수 있다. 앱간의 액티비티 이름을 모르므로Service나 Receiver한테 무슨일을 하는지 등록한다. 그것이~Intent filter 이다. 나는 이런일을 할 수 있어, 등록해놓고, 걔를 띄우면 된다. ex:)Browserhttp:// DataView : Action http://로 시작하는 Data를 넘겨주면 브라우저를 플랫폼이 띄어준다. 정형화된 URI를 통해 리소스를 나타낸다. 그리고 mime-type 으로 나타낸다. .. 더보기 [6일차]앱 구성요소 Activity 독립적인 실행 모듈 화면을 관리하는 역할을 감당하는 걸 액티비티라 한다. 화면을 가지고 있다. Activity를 상속해서 쓴다. Service독립적인 실행 모듈백그라운드에서 돌아간다. Service를 상속해서 쓴다. 액티비티와 다른점은 작업만 처리하면 되기때문에 Queue에 넣어놓고 하나씩 처리한다. 액티비티는 반드시는 아니지만 호출 할때마다 인스턴스를 만든다. Service는 처음만 인스턴스를 만든다. Receiver안드로이드 앱들에게 알려주거나 전파하기 위해서 정보를 담아서 전파정보(Broadcast Intent)를 받는 애 . 리시버는 브로드캐스트 이벤트를 발송한다. 그러면 이벤트를 수신해서 처리한다. 앱 바깥에 있는 반응들을 받는것. 문자,부팅 이런거 내가 앱을 만든다 하면 이런 .. 더보기 [6일차] 오픈소스 활용 라이브러리 활용 소개 - AutoFitTextView 자동 으로 변환되는 글자 - RevealTextView 자동 애니메이션 - RelativeTimeTextView 글이 올라오는 5분전 이런식으로 - KnifeText 링크나 줄가는거 입력하고 편집할 수 있게하는 거 - MaskedEditText 형식을 맞춰서 입력할수 있게 하는거 - TokenAutocomplete 메일주소 치거나 그럴때 태그 모양을 만들어 주는거 - emojicon - 이모티콘을 입력할 수 있다. //////여기 까지 텍스트뷰 프로그래스 - CircleProgress - CircularProgressButton 파일 업로드 할때 완료 하는거 - ProgressButton 로그인할때 버튼밑에 프로그래되는거 //지금 까지 프로그래스 Se.. 더보기 [6일차]리사이클러뷰 계속 오늘은 ItemDecoration 요즘 UI컨셉이 바껴서 Card라는 형식으로 UI를 배치한다. CardView 라는걸 사용할 수도있고, 그림을 그려서 사용할 수 도 있다. List에 배치 될 때 view에 그리면 된다. 이런것들을 그리는 역할을 담당하는 객체를 ItemDecoration 이라고 한다. - ItemOffset 가장자리크기 확보 getItemOffset(l,r,t,b) - onDraw 내용전에 그림그리기 - 내용 위에다 그림그리기 onDrawOver 여기서는 예제코드만 , 그래픽스를 안배웠기 때문에 .... 일반적으로 만들어져 있는 오픈소스를 활용하는 경우가 대부분이다. Devider 같은경우 오픈소스가 있다. scroll 처리 LayoutManager가 가지고 있다. manager.scr.. 더보기 [5일차]드디어 리사이클러 뷰 !!!! 리사클러 뷰가 convert view 라는 걸 가지고 있다. 레이아웃 매니져 차일드뷰의 배치방식 결정리사이클러 뷰 화면에 차일드 뷰 그리기 어댑터 데이터셋관리 뷰 홀더 생성. ㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇ 리사이클러 뷰를 만들어 봅시다. !!! 오픈모듈로 디펜던시 추가 com.android.support.recyclerview 리사이클러 뷰 배치person data리사이클러 뷰는 parent로 레이아웃 인플레이트를 하면 부모의 레이아웃 height크기에 우선적으로 맞춰서 나온다. 주의 할점.. inflate 할때 ,null로 하면 끝까지 안간다. 그래서 parent,false로 해줘야 한다. 내가 저렇게 만들었는데 뷰홀더를 상속해서 만드는거다. 레이아웃 인플레이터 상속 .. 더보기 이전 1 ··· 7 8 9 10 11 12 13 ··· 17 다음