[Android] Overview screen 을 꾸며보세요. |
http://www.bignerdranch.com/blog/polishing-your-Android-overview-screen-entry
-
Overview Screen( Home key long press 혹은 multi tasking button ) 을 Lollipop 부터는 꾸밀 수 있게 되었다.
새로운 API 를 이용해 icon, title, top bar 색상 등을 수정할 수 있다.
-
별다른 설정을 하지 않으면 android:icon, android:label, android:theme 을 통해 icon, title, top bar color 가 각각 정해진다.
이 값들은 base activity( launch, main ) 로부터 가져온다.
만약 해당 activity 에 값이 정의되어 있지 않으면, application level 에서 해당 값을 가져온다.
-
label text color 는 직접 지정할 수 없고, system 이 top bar 색상을 기반으로 자동으로 정한다.
만약 top bar 가 어둡다면 text 는 밝을 것이다.
-
top bar color 는 colorPrimary 값을 사용하는데 이 값은 Lollipop 에서 생긴 값이다.
따라서 compatability 를 위해 v7-appcompat 사용이 권장된다.
-
Lollipop 에서는 TaskDescription 을 이용하여 runtime 에 이 값들을 조작할 수 있다.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
// primary color 가져오기
TypedValue typedValue = new TypedValue();
Resources.Theme theme = getTheme();
theme.resolveAttribute(R.attr.colorPrimary, typedValue, true);
int color = typedValue.data;
// Overview 에 사용할 이미지 load
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.ic_activity_welcome);
ActivityManager.TaskDescription td = new ActivityManager.TaskDescription(null, bm, color);
setTaskDescription(td);
bm.recycle();
}
'프로그래밍 놀이터 > 안드로이드, Java' 카테고리의 다른 글
[Java Concurrency] 스레드 안전성 (2) | 2017.04.14 |
---|---|
[android] ListView 에서 RecyclerView 로 migration 하세요. (0) | 2017.04.13 |
[Android] Material Design 개략적으로 알아보기~ (0) | 2017.04.10 |
[Java] Executor : Java Concurrency API (0) | 2017.03.08 |
[Java] What is "CopyOnWriteArrayList" (0) | 2017.02.22 |
댓글