반응형
내역을 추가할 때, 날짜를 calender로 받고 싶다.
오른쪽 calendar 아이콘 클릭 시 날짜 고르는 창이 뜨는 것이다.
이를 위해서는 DatePickerDialog를 사용하면 아래와 같은 결과를 얻을 수 있다.
아래와 같은 코드로 DatePickerDialog를 띄울 수 있다.
여기서 run{} 부분에 dialog에서 클릭한 날짜를 처리하는 로직을 추가하면 된다.
binding.imgbtnDate.setOnClickListener {
var calendar = Calendar.getInstance()
var year = calendar.get(Calendar.YEAR)
var month = calendar.get(Calendar.MONTH)
var day = calendar.get(Calendar.DAY_OF_MONTH)
context?.let { it1 ->
DatePickerDialog(it1, { _, year, month, day ->
run {
binding.editTvDate.setText(year.toString() + "." + (month + 1).toString() + "." + day.toString())
}
}, year, month, day)
}?.show()
}
-- 색깔이 맘에 안든다. themes.xml을 수정해서 색을 간단히 바꿀 수 있다.(themes.xml이다.)
colorAccent를 자신이 원하는 컬러로 바꿔주면 된다...이걸 바꾸면,
editText에 focusing이 잡히거나, 할때도 색깔이 적용된다.( 일반적으로, 이 방법 더 추천...)
night모드도 바꿔준다.
<item name="colorAccent">@color/primary_color</item>
결과~ 좌좌좐~
만약 Calendar만 다른 색깔을 쓰고 싶다면 아래와 같은 방법으로 적용한다.
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Base application theme. -->
<style name="Theme.EventMoneyManager" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Primary brand color. -->
<item name="colorPrimary">@color/primary_color</item>
<item name="colorPrimaryDark">@color/purple_700</item>
<item name="colorAccent">@color/teal_200</item>
<!-- Customize your theme here. -->
<!-- DatePicker의 스타일 설정 -->
<item name="android:datePickerDialogTheme">@style/MyDatePickerDialogTheme</item>
</style>
<style name="MyDatePickerDialogTheme" parent="android:Theme.Material.Light.Dialog">
<!-- 원하는 색 설정 -->
<item name="android:colorAccent">@color/primary_color</item>
<!-- No need to override 'datePickerStyle' -->
<!-- <item name="android:datePickerStyle">@style/MyDatePickerStyle</item> -->
</style>
</resources>
또는
참고
1. https://pickhada.tistory.com/27
2. https://stackoverflow.com/questions/28738089/how-to-change-datepicker-dialog-color-for-android-5-0
반응형
'안드로이드' 카테고리의 다른 글
[안드로이드] 안드로이드 스튜디오 : Git Push오류 발생 (0) | 2022.11.21 |
---|---|
[안드로이드] mobile navigation : popUpTo, popUpToInclusive, 이전 Fragment 중복 안되게 설정 (0) | 2022.11.18 |
[안드로이드] 스피너(콤보박스) Spinner- Kotlin 구현 (0) | 2022.10.13 |
[안드로이드] RecyclerView, ListView에서 item이 클릭이 안될 때 : descendantFocusability (0) | 2022.10.03 |
[안드로이드] ListView 구현하기(Kotlin) (0) | 2022.10.02 |
댓글