본문 바로가기

소소한 팁

[Android] 특정화면에서 안드로이드 스테이터스바, 아이콘 색상 변경할 때 겪은 이슈 프로젝트 작업 중 특정 화면에서 스테이터스바 색상을 흰색으로 변경할 일이 있었습니다. 그래서 스테이터스바 색상 변경 코드와 window.setStatusBarColor() 아이콘 색상 변경하는 코드를 window.decorView.systemUiVisibility += View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR 넣고 앱에 잘 적용된걸 확인한 뒤 다른 작업을 하고 있었는데 QA 도중 OS 버전이 낮은 기기에서 아이콘과 시간이 보이지 않는 이슈를 발견했습니다. 왜 그런가 하고 보았더니 색상 변경하는 코드는 흰색으로 잘 적용이 되었는데 스테이터스바에 있는 아이콘, 글자 색깔은 OS 버전 6 (API 23) 이상 부터 바꿀 수 있었고 해당 기기는 OS 버전 6 미만이어서 흰색 배경에 아이.. 더보기
[Andorid] 커스텀 토스트 만들기 안드로이드에서 제공하는 기본 토스트바는 띄워지는 시간 minimum 이 2초이고 글짜색이나 배경색, 토스트 위치를 변경하는게 쉽지않다. 따라서 토스트를 커스텀하기 위해서는 커스텀 토스트바를 만들어야 한다. 구글링을 해보니 토스트 객체에서 뷰를 가져와 해당 뷰에 백그라운드와 텍스트 색상을 입히는 방식이었다. 내가 짠 코드는 다음과 같다. [ kotlin - extension ] fun Context.showCustomToast(@StringRes msg: Int) { val toast = Toast.makeText(this, msg, Toast.LENGTH_SHORT).apply { (view as ViewGroup).apply { with(this.getChildAt(0) as TextView) { se.. 더보기