** 오늘 발표 내용을 오늘에야 올리는 안드로메다급 개념.. (죄송합니다.. ㅠ.ㅠ) **
개인적으로 실습한 파일 첨부하려니 용량 초과로 안되네요.. 링크걸어 둡니다..
Chapter 3.
- 안드로이드 애플리케이션 구성요소
- Activity
- Services
- Content Providers
- Intents
- Broadcast Receivers
- Notifications
- 애플리케이션 Manifest
- Manifest 파일
- Application을 구성하는 각각의 component(activity, service, content provider, broadcast receiver)에 대한 노드를 포함.
- Intent Filer와 Permission을 사용해 이들이 다른 component나 application과 어떻게 상호작용을 하는지를 결정.
- Application 우선순위와 프로세스 상태 이해하기
- Activity Process(활성 프로세스) : 현재 실행되어 사용자와 상호작용을 하고 있는 Process로 사용자의 이벤트에 반응. onReceive 이벤트 핸들러를 실행중인 activity, service, broadcast receiver나 onStart, onCreate, onDestroy 이벤트 핸들러를 실행중인 서비스가 이에 속함.
- Visible Process(화면에 보이는 프로세스) : 화면에는 보이지만 비활성 상태인 activity. 사용자의 이벤트에 반응하지않음.
- Started Service Process : 서비스는 사용자와 직접적인 상호작용을 하지 않기때문에 화면에 보이는 activity에 비해 낮은 우선순위를 갖음.
- Background Process : 화면에 보이지 않는 activity를 가지고 있고 실행중인 서비스가 없는 프로세스.
- Empty Process : 안드로이드의 전체적인 시스템 성능 향상을 위해 수명이 다한 application을 메모리에 상주시키는데 이것이 empty process.
- Resource 외부화하기
리소스의 유지, 업데이트, 관리상의 용이성이 확보된다.
- 리소스 만들기
- 간단한 값 생성하기
문자열, 색상, 치수, 문자열 배열이나 정수 배열등. res/values폴더의 xml파일에 저장.
- 문자열 : string 태그로 지정. ( 예 : <string name="greeting">Hello</string> )
- 색상 : color태그로 지정. #[A]RGB, #[AA]RRGGBB ([] : optional)
( 예 : <color name= "green_color">#7700FF00</color> )
- 치수 : dimen 태그로 지정. px(픽셀), in(인치), pt(포인트), mm(밀리미터), dp, sp
( 예 : <dimen name = "border">5px</dimen>
- 스타일과 테마 : style 태그로 지정. style 태그는 'name' attribute와 하나이상의 'item' 하위 태그를 갖는다. 각 item 태그는 'name' attribute를 포함해야 하며 또한 값을 가져야 한다.
- drawable : 비트맵과 나이패치 이미지등이 해당. res/drawable폴더에 저장.
- 레이아웃 : 화면에 보여지는 프리젠테이션 계층으로 xml 파일로 정의. res/layout폴더에 저장. 저장된는 파일이름이 resource 식별자가 된다.
- 애니메이션
- tweened animations : 뷰를 회전(rotate), 이동(translate), 페이드 효과(alpha), 크기변화(scale) 등을 주는데 사용. res/anim폴더에 xml 파일로 저장.
- 프레임 바이 프레임 애니메이션 : 움직이는 drawable을 생성하기 때문에 res/drawable res/anim 폴더에 저장되며 파일이름이 resource식별자가 된다.
- 리소스 사용하기
- 코드에서 리소스 사용하기
- 코드에서는 static 클래스인 R을 사용해 리소스에 접근. R클래스는 사용자가 정의한 리소스 타입별로 각각의 하위클래스를 가지고 있다. (R.string.app_name , R.drawable.icon등)
- 어플리케이션 컨텍스트에서 resource 인스턴스가 필요한 경우 getResources() method를 사용.
- 리소스에서 다른 리소스 참조하기
- 리소스 내에서 다른 리소스를 참조하려면 '@' 표기법 사용.
attribute = "@[packagename:]resourcetype/resourceID"
( 예 : .... android:text="@string/hello" ... )
- 시스템 리소스 사용하기
어플리케이션 컨텍스트 내에서는 'android.R'을 통해 안드로이드 리소스 클래스 사용.
사용자 정의 리소스 내에서는 '@android:resourcetype/resourceID' 사용
- 현재테마에서 스타일 참조하기
- 현재 적용된 테마로부터 스타일을 사용할 수 있게 하는 기능 제공. 리소스 내 '@'대신 '?android:'를 사용. (테마 적용은 manifest 파일에서 설정)
- 여러 가지 언어와 하드웨어를 위한 리소스 만들기
- 특정 언어와 위치, 하드웨어 구성에 따른 서로 다른 Resource 값을 생성할 수 있다. 동적으로 Resource를 선택할 수 있다.
res/ 폴더 안에 병행 디렉토리 구조를 갖고, 지원하는 조건은 '-'으로 구분.
사용 가능한 한정자는 언어, 지역, 화면방향, 화면픽셀밀도, 터치스크린타입, 키보드 사용, 키보드 입력타입, UI탐색타입, 화면해상도 등이 있다.
제한 사항은, 어떤 조합이든 지원되지만 목록 순서대로 정의되어야 하며 하나의 한정자당 하나의 값만(언어를 en-ko... 이렇게는 못쓴다는..)
- 런타임 구성 변경
안드로이드는 각 어플리케이션을 종료하고 재시작한 뒤 리소스 값을 다시 읽어들임으로 언어, 위치, 하드웨어에 대한 런타임 변경을 지원함. 런타임 구성 변경을 감지하는 activity를 가지려면 manifest파일 activity노드에 'android:configChanges' 속성을 추가. 해당 속성 값은 orientation(화면 가로 세로 회전), keyboardHidden(키보드가 보여지거나 숨겨짐), fontScale(글꼴 크기 변경), locale(언어설정 변경), keyboard(키보드 종류 변경), touchscreen/navigation. 위 속성을 추가하면 해당 activity의 onConfigurationChanged 메소드가 호출됨.
- 안드로이드 액티비티 좀더 자세히 살펴보기
하나의 액티비티는 화면 하나를 표현한다.
- 액티비티 만들기
- 새로운 액티비티를 생성하려면 Activity class를 상속받아 사용자 인터페이스를 정의하고 필요한 기능을 구현한다. activity에 사용자 인터페이스를 할당하려면 onCreate 메소드에서 setContentView를 호출. 액티비티를 사용하기 위해서는 manifest의 application 노드에 activity 노드 태그를 추가.
- 액티비티 수명주기
- 액티비티 스택 : 액티비티 상태는 현재 실행중인 모든 액티비티의 후입선출모음(last-in-first-out collection)인 액티비티 스텍에서 그가 차지하는 위치에 의해 결정.
- 액티비티 상태
액티비티의 상태 변경은 안드로이드 메모리 관리자에 의해 다뤄진다.
- Active(화면에 보이고 사용자 입력 받음)
- Paused(화면에 보이지만 포커스를 갖지 않음),
- Stopped(화면에 보이지 않을 경우. 상태 및 정보를 유지한 채 메모리에 존재),
- Inactive(activity가 종료되고 난 후, 실행되기 전 상태)
- 액티비티 수명 이해하기
- 전체 수명 : onCreate ~ onDestroy 사이.
- 가시 수명 : onStart ~ onStop 사이. activity가 포커스를 갖지 않고, 부분적으로 가려지더라도 화면에는 보여짐.
- 활성 수명 : onResume ~ onPause 사이. 사용자 입력 이벤트를 받는다.
- 안드로이드 액티비티 클래스
MapActivity, ListActivity, ExpandableListActivity, ActivityGroup 등이 있다.
Chapter 4.
- 뷰 소개
안드로이드에 있는 모든 visual components는 View class로 부터 파생되며 이를 View라 함.
ViewGroup 클래스는 여러개의 view를 담도록 설계된 view의 확장.
- 뷰를 사용해 액티비티 사용자 인터페이스 만들기
새로운 액티비티는 빈 화면 위에 사용자 인터페이스를 배치하는 것으로 시작.
사용자 인터페이스를 설정하기 위해 일반적으로 onCreate메소드에 setContentView를 사용.
findViewById()를 이용해 레이아웃내의 뷰 레퍼런스를 얻을 수 있다.
- 안드로이드 위젯도구 상자
간단한 인터페이스 생성을 돕는 표준 뷰 도구 상자를 제공.(TextView, EditText, ListView, Spinner, Button, CheckBox, RadioButton 등)
- 레이아웃 소개
레이아웃은 화면 위에 있는 자식 컨트롤의 위치를 제어하기 위해 설계된 ViewGroup클래스의 확장이다.
레이아웃의 종류는 FrameLayout, LinearLayout, RelativeLayout, TableLayout, AbsoluteLayout 등이있다.
- 레이아웃 사용하기
레이아웃 구현에 선호되는 방법은 외부 리소스를 사용해 xml로 구현하는 것. 코드로 레이아웃을 구현 할 수도 있다. xml레이아웃은 반드시 단일 루트 엘리먼트를 가져야만 함.
- 새로운 뷰 만들기
기존 컨트롤이 사용자가 원하는 기능을 제공한다면 그 컨트롤의 외관이나 동작방식을 수정.확장한다.
기존 컨트롤을 바꾸거나 결합하는 방식으로 만들 수 없는 인터페이스라면 새로운 컨트롤을 생성한다.
- 기존 뷰 수정하기
기존에 정의된 뷰를 확장하여 새로운 모양(onDraw, onMeasure)이나 동작방식(onKeyDown, onKeyUp, onTrackballEvent, onTouchEvent)을 재정의 할 수 있다.
**** 할일목록 수정해보기 ****
- 복합 컨트롤 만들기
서로 연결되어 배치된 여러 자식 컨트롤을 담는 원자적이면서도 재사용 가능한 위젯.
**** 복합컨트롤 예제 ****
- 커스텀 위젯 컨트롤 만들기
**** 나침반 뷰 예제로 ****
- 메뉴만들고 사용하기
- 안드로이드 메뉴 시스템 소개
- 아이콘 메뉴 : 메뉴버튼을 누르면 화면 하단에 보여짐.
- 확장 메뉴 : 아이콘 메뉴에 보여지는 메뉴 수가 한정되어있기(최대 6개) 때문에 그 이상의 메뉴는 리스트 형태로 보여줌.
- 하위 메뉴 : 메뉴의 하위 메뉴가 존재할 경우 다이얼로그 박스에 하위 메뉴를 보여준다
- 액티비티 메뉴 정의하기
- onCreateOptionsMenu 메소드를 재정의.
메뉴를 추가하려면 Menu 객체에 add 메소드를 사용.
각 매뉴 항목마다 1.메뉴항목들의 그룹값, 2.각 메뉴에 대한 유일한 식별자, 3.메뉴의 순서를 정하는 순서값, 4.문자열로 된 메뉴 텍스트 를 지정해야한다.
- 메뉴 항목 옵션 : 체크박스, 라디오버튼, 단축키, 제목, 아이콘, 메뉴항목 클릭 리스너, 인텐트 등을 지원.
- 동적으로 메뉴항목 업데이트 하기
액티비티의 onPrepareOptionsMenu 메소드를 이용하여 메뉴가 표시될 때마다 어플리케이션 상태에 기반해 메뉴를 수정할 수 있다.
- 메뉴선택 처리하기 : onOptionsItemSelected 메소드를 사용.
- 하위메뉴와 컨텍스트 메뉴
- 하위메뉴 만들기 : 하위메뉴는 addSubMenu 메소드로 추가 가능. 통상적인 메뉴를 추가하는데 사용되는 add 메소드와 동일한 매개변수를 지원함.
- 컨텍스트 메뉴 사용하기
- 컨텍스트 메뉴 만들기 : onCreateContextMenu 메소드를 재정의해 생성. 생성된 컨텍스트 메뉴를 사용해야 하는 뷰를 registerForContextMenu()를 사용해 등록한다.
- 컨텍스트 메뉴 선택 다루기 : onContextItemSelected 메소드를 재정의하여 사용.
*** 메뉴 만들어 보기 ***
Technological improvements have improved communication in a number of areas along with the advance from the best headphones and microphones has allowed two as to communicate,beats monster not only with every other but with digital devices too.
Headphones were employed for really some time, but present day modern variations permit for greater listening of digital devices. To complete so, the need to translate the signals from our MP3 player, Television, computer, CD participant or other unit into sound waves that will be understood by people.beats headphones Not all headphones are alike. You may possibly listen to some called earbuds, or some called stereo phones or simply just earphones. Some terms to turn out to be accustomed to so that you'll be able to quickly shop formonster headphones are supra-aural and circumaural too as canal phones and earbuds.
Circumaural headphones would be the sorts of headphones that have also significant pads,beats by dr dre tour 1 for each ear. They're large in dimension but are pretty comfortable to wear. These are superb whenever you want very good isolation from outside noise and are generally utilized in recording studios.
Supra-aural headphones are smaller sized with small pads that go over the ears.dr dre monster headphones Although they supply good sound, they will not block external noise.
For the best headphones and microphones collectively,beats by dr dre you need a telecommunication set. Today they are used a good deal for individual communication through the pc too as for help individuals in businesses.beats by dr dre studio These possess a microphone with a sensor that turns your voice into electrical signals and 1 earpad exactly where the sound is transmitted for your ears.
The use of microphones is not new,beats by dr dre headphones they've been utilized for Tv and radio as well as In devices including hearing aids for a long time. Today their uses are found in computers too. They capture electronic magnetic waves from any medium for instance air or h2o or any factor good and then turn them into electrical signals.cheap beats by dr dre Today, microphones are most commonly used for audio recordings. You'll find a couple of kinds of microphones - microphones that use electromagnetic wave generation are known as dynamic microphones and ones that use a type of mechanical vibration are referred to as condenser microphones.
The best headphones and microphones make existence less complicated!monster turbine Each microphones and headphones are amazing inventions which have created broadcasting live performances a lot less complicated and also have extra to the jobs of numerous telephone gross sales and assistance personnel.dre beats headphones Right now, you will discover even more and superior applications like producing speaking to the telephone safer while you drive.
<a href="http://www.beatsbydre-france.fr/">cher casque beats by dre</a>
<a href="http://www.beatsbydre-france.fr/">beats casque distributors</a>
<a href="http://www.beatsbydre-france.fr/">casque beats by dre online</a>
<a href="http://www.beatsbydre-france.fr/">beats by dr dre casque</a>
<a href="http://www.beatsbydre-france.fr/nouveau-style-drdre-beats-c-85.html">nouveau style dr dre beats<a>
<a href="http://www.beatsbydre-france.fr/nouveau-style-drdre-beats-c-85.html">cher nouveau arriver dr dre beats</a>
<a href="http://www.beatsbydre-france.fr/beats-by-drdre-studio-spiderman-justin-bieber-édition-spéciale-p-294.html">beats by dr dre spiderman casque</a>
<a href="http://www.beatsbydre-france.fr/beats-by-drdre-studio-spiderman-justin-bieber-édition-spéciale-p-294.html">casque spiderman beats by dre</a>
<a href="http://www.beatsbydre-france.fr/beats-by-drdre-studio-superman-dwight-howard-édition-spéciale-p-295.html">beats by dr dre superman casque</a>
<a href="http://www.beatsbydre-france.fr/beats-by-drdre-studio-superman-dwight-howard-édition-spéciale-p-295.html">superman beats by dre casque</a>
<a href="http://www.beatsbydre-france.fr/casque-beats-by-drdre-studio-chrome-colorware-edition-limitée-p-296.html">casque chrome colorware</a>
<a href="http://www.beatsbydre-france.fr/casque-beats-by-drdre-studio-chrome-colorware-edition-limitée-p-296.html">casque beats by dre chrome colorware</a>
<a href="http://www.cheap-monsterbeatsbydrdre.co.uk">Cheap Beats By Dre</a>
<a href="http://www.cheap-monsterbeatsbydrdre.co.uk">Dr Dre Headphones</a>
<a href="http://www.cheap-monsterbeatsbydrdre.co.uk">Cheap Monster Beats Headphones</a>
<a href="http://www.cheap-monsterbeatsbydrdre.co.uk">Beats By Dr Dre</a>
<a href="http://www.cheap-monsterbeatsbydrdre.co.uk/new-style-beats-by-drdre-c-69.html">New Style Beats By Dre Headphones</a>
<a href="http://www.cheap-monsterbeatsbydrdre.co.uk/beats-by-drdre-studio-c-89.html">Cheap Dr Dre Studio Headphones</a>
<a href="http://www.cheap-monsterbeatsbydrdre.co.uk/beats-by-drdre-studio-c-89.html">Beats By Dre Studio</a>
<a href="http://www.cheap-monsterbeatsbydrdre.co.uk/beats-by-drdre-pro-c-90.html">Cheap Dr Dre Pro Headphones</a>
<a href="http://www.cheap-monsterbeatsbydrdre.co.uk/beats-by-drdre-pro-c-90.html">Beats By Dre Pro</a>
<a href="http://www.cheap-monsterbeatsbydrdre.co.uk/beats-by-drdre-solo-c-91.html">Cheap Dr Dre Solo Headphones</a>
<a href="http://www.cheap-monsterbeatsbydrdre.co.uk/beats-by-drdre-solo-c-91.html">Beats By Dre Solo</a>
<a href="http://www.drdrebeatsheadphones-australia.com">beats by dr dre</a>
<a href="http://www.drdrebeatsheadphones-australia.com">beats by dre sale</a>
<a href="http://www.drdrebeatsheadphones-australia.com">cheap beats by dre</a>
<a href="http://www.drdrebeatsheadphones-australia.com">beats by dre store</a>
<a href="http://www.drdrebeatsheadphones-australia.com">high quality headphones</a>
<a href="http://www.drdrebeatsheadphones-australia.com">new design headphones</a>
<a href="http://www.beatsbydre-outlet-canada.com/">discount beats by dre</a>
<a href="http://www.beatsbydre-outlet-canada.com/">cheap beats by dre</a>
<a href="http://www.beatsbydre-outlet-canada.com/">beats by dre canada</a>
<a href="http://www.beatsbydre-outlet-canada.com/">monster beats by dre</a>
<a href="http://www.beatsbydre-outlet-canada.com/">free shipping dr dre beats</a>
<a href="http://www.beatsbydre-outlet-canada.com/">monster beats online</a>




오늘 스터디 모임이 기대 됩니다. 실습과 정리가 조화롭네요 ㅎㅎ