팬딩인텐트는 인텐트의 일종으로, PendingIntent는, intent를 바로 수행하지 않고 '특정 시점'에 수행하도록 하는 특징으로 '특정 시점'은 앱이 구동되지 않을 때라고 한다. 대표적 사용 사례 Notification 바탕화면 위젯 AlarmManager 사용법 PendingIntent.getActivity(Context, Int, Intent, Int) PendingIntent.getService(Context, Int, Intent, Int) PendingIntent.getBroadcast(Context, Int, Intent, Int)
앱을 만들면서 내부 로컬 db 사용이 필요했다. sqlite를 사용하려고 관련해서 찾다가, Room을 발견했다. Room이 무엇인가? Room은 안드로이드 로컬 데이터베이스를 사용할 때 쓴다고 한다. 사용법 1. 의존성 추가 build.gradle파일에 dependency에 다음 코드를 추가해준다. def roomVersion = "2.4.2" implementation("androidx.room:room-runtime:$roomVersion") kapt("androidx.room:room-compiler:$roomVersion") 이때 roomVersion의 경우에는 https://developer.android.com/jetpack/androidx/releases/room?hl=ko 에서 최신 버전 ..
recyclerview를 이용해 gridview를 동적으로 생성하였는데 요소들이 왼쪽 정렬이 되었다. 가운데 정렬을 하기 위해 gravity를 center로 하면 해결이 될 줄 알았으나 실패.. 이것저것 해보다가 결국 찾았다. width를 match parent로 두어 최대로 하고 margin을 주어 여백을 만들었다. 그리고 하위 요소에 adjustviewbounts를 true로 주어서 가로 세로 비율을 동일하게 주었다. 코드 결과
문제 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크기가 N×M인 직사각형으로 나타낼 수 있으며, 직사각형은 1×1 크기의 정사각형으로 나누어져 있다. 연구소는 빈 칸, 벽으로 이루어져 있으며, 벽은 칸 하나를 가득 차지한다. 일부 칸은 바이러스가 존재하며, 이 바이러스는 상하좌우로 인접한 빈 칸으로 모두 퍼져나갈 수 있다. 새로 세울 수 있는 벽의 개수는 3개이며, 꼭 3개를 세워야 한다. 예를 들어, 아래와 같이 연구소가 생긴 경우를 살펴보자. 2 0 0 0 1 1 0 0 0 1 0 1 2 0 0 1 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 ..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.