목록Computer/Android (77)
안드로이드 개발자의 창고
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/FqKyq/btsl0is00YM/z8RqLUjT3c74Pcm32PcSoK/img.gif)
출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 ToolBar 안드로이드에서 ActionBar를 보다 자유롭게 사용할 수 있도록 Toolbar라는 View를 제공하고 있다. Toolbar를 이용해 탭 등 다양한 기능을 이용할 수 있도록 제공하고 있으며 기본적인 부분은 ActionBar와 동일하다. 예제 코드 menu/main_menu.xml activity_main.xml activity_second.xml MainActivity.kt class MainActivity : AppCompatActivity() { lateinit var activityMainBinding: ActivityMainBinding override fun onCreate(savedInstanceState: Bundl..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bWsoL4/btsl1AzTwcM/fa4y8WK9g2qA21vuyi61ek/img.gif)
출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 ActionBar Navigation ActionBar에 아이콘을 배치하여 뒤로가기 기능을 구현할 수 있다. 아이콘을 표시한다고 해서 뒤로 가기 기능이 생기는 것은 아니기 때문에 직접 구현을 해야한다. 예제 코드 activity_main.xml activity_second.xml MainActivity.kt class MainActivity : AppCompatActivity() { lateinit var activityMainBinding: ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) activ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ddfT9b/btsl0VjZsBT/L7SjCTsQdkn33eBeBWBbNK/img.gif)
출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 ActionView ActionBar에 View를 배치하고 이를 접었다 폈다 할 수 있는 개념 주로 검색 기능을 만들 때 사용한다. 예제 코드 menu/main_menu.xml collapseActionView 사용자가 위젯과 상호작용하지 않을 때 위젯을 표시하는 방법을 나타낸다. 위젯이 앱 바에 있는 경우 앱은 위젯을 아이콘으로 표시한다. 위젯이 더보기 메뉴에 있는 경우 앱은 위젯을 메뉴 항목으로 표시한다. 사용자가 작업 뷰와 상호작용할 때는 위젯이 확장되어 앱 바를 채운다. activity_main.xml MainActivity.kt class MainActivity : AppCompatActivity() { lateinit var act..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/QYsN2/btsl0LWffU8/K04dR4kL9kmorZS6O4BKbK/img.gif)
출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 ActionBar ActionBar는 Option Menu 구성 시 showAsAction 속성을 이용한다. showAsAction 속성 설명 None 기본. ActionBar에 표시하지 않음 Always 무조건 ActionBar에 표시 ifRoom 공간이 허락할 경우 ActionBar에 표시 Icon ActionBar에 표시될 때 사용할 아이콘을 지정 withText 공간이 허락될 경우 아이콘과 함께 문자열을 표시 예제 코드 menu/main_menu.xml activity_main.xml MainActivity.kt class MainActivity : AppCompatActivity() { lateinit var activityMainB..
출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Fragment Fragment는 Activity내의 작은 화면 조각으로 Activity의 화면을 여러 영역으로 나누어 관리하고 하는 목적으로 사용한다. Activity는 독립된 실행 단위로 메모리를 많이 소모한다. 독립된 실행 단위가 아닌 화면만 필요한 경우 Activity 보다는 Fragment를 활용하는 것이 효율적이다. 주요 속성 속성 설명 add Fragment를 지정된 레이아웃에 추가 replace 지정된 레이아웃에 설정되어 있는 Fragment를 제거하고 새로운 Fragment를 추가 주요 메서드 안드로이드에서 back button은 현재 Activity를 종료한다. Fragment는 Activity가 아니므로 Back Butto..
출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Service 안드로이드 4대 구성 요소 중 하나로 백그라운드 처리를 위해 제공되는 요소 Activity는 화면을 가지고 있어 화면이 보이는 동안 동작하지만 Service는 화면을 가지고 있지 않아 보이지 않는 동안에도 동작하는 것을 의미한다. Forground Service Service는 백그라운드에서 운영되는 실행 요소로써 메모리가 부족해지거나 절전 모드가 되는 등 다양한 상황에서 안드로이드 OS에 의해 제거 될 수 있다. 이를 방지하고자 할 때는 Foreground Service로 만들어 사용하면 된다. Foreground Service외의 서비스는 안드로이드 OS에 의해 모두 제거될 수 있다. Foreground Service의 목적..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/nWvuL/btslqhAWRKf/cA9eQhI3HjI1j3cSVBn5Yk/img.png)
출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Broadcast Receiver 안드로이드 OS에서 특정 상황에 발생하는 메시지를 받아 들여 동작하는 실행 단위 반드시 외부에서 접근을 하기 위한 이름을 가져야 한다. 실제 동작은 애플리케이션이 단말기에 설치되면 안드로이드 OS는 Broad Cast Receiver에 등록된 이름으로 정리하여 목록화한다. 안드로이드 OS에서 어떤 사건이 발생하면 사건과 관련된 이름으로 지정된 Broad Cast Receiver를 찾아 동작 시킨다. 또 애플리케이션에서 이름을 전달하여 실행을 요청하면 해당 이름이 지정된 Broad Cast Receiver를 찾아 동작 시킨다. Broadcast Receiver의 이름 Broad Cast Receiver는 평소에..
출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Thread 안드로이드는 Activity의 코드를 처리하기 위해 Thread를 발생 시킨다 이 때 발생되는 Thread를 Main Thread라고 부르며 UI Thread라고 부르기도 한다. Main Thread가 현재 어떠한 처리도 하지 않고 유휴 상태일때만 화면 작업이 가능하다. 이 때문에 오래 걸리는 작업은 별도의 Thread를 발생시켜 처리하고 Main Thread를 항상 유휴 상태로 유지하게 해야 한다. 화면 처리 안드로이드는 개발자가 발생 시킨 Thread에서 화면에 대한 처리를 하면 오류가 발생한다. 현재 안드로이드 오래오(8.0) 이상 부터는 개발자가 발생 시킨 Thread에서 화면 처리가 가능하다. 허나 OS 버전이 변경되면서..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/coJc9F/btslfew4n1J/ItiYLWcrvkUPoiBJ3kxmC0/img.gif)
출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 다양한 Notification Big Picture 메시지를 펼쳤을 때 이미지를 표시할 수 있다. button.setOnClickListener { val builder = getNotificationBuilder(NOTIFICATION_CHANNEL1_ID) builder.setContentTitle("Big Picture") builder.setContentText("Big Picture Notification") builder.setSmallIcon(android.R.drawable.ic_menu_search) // BigPicture 설정 val big = NotificationCompat.BigPictureStyle(builder) ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/lwJdD/btslcCSufEJ/2cz1NLBc9pkjz4R8Jz0wt0/img.gif)
출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Pending Intent Notification 메시지를 통해 애플리케이션의 Activity를 실행할 수 있으며 이 때 Pending Intent를 사용한다. Pending Intent를 통해 실행되는 Activity로 데이터를 전달 할 수 있다. Action 알림 메시지에 Button과 같은 것을 배치하여 이를 눌렀을 때 지정된 Activity를 실행할 수 있다. 안드로이드 4.0 까지는 메시지 당 하나의 Activity만 실행이 가능했지만 4.1 이후로 Action이 제공되어 하나의 메시지에서 여러 Activity를 선택적으로 실행할 수 있게 되었다. 예제 코드 class MainActivity : AppCompatActivit..