일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- Retrofit Kotlin
- 레트로핏 코틀린
- lifecycleScope
- 리사이클러뷰
- java
- dialogfragment singleton
- dialog resize
- recyclerview
- 레트로핏2
- 레트로핏 MVVM
- 위치정보확인
- Android
- DataBinding
- 데이터바인딩
- dialog fragment
- 인텐트란?
- Retrofit with MVVM
- 쉐어드
- 다이얼로그 크기조절
- 다이얼로그 프래그먼트
- 뷰바인딩
- ScrollView Child View Height Programmatically
- ScrollView with ConstraintLayout
- viewBinding
- 안드로이드
- 프로그래머스
- location System
- 스크롤뷰 자식 뷰 높이 동적조절
- NestedScrollView
- programmers
- Today
- Total
목록안드로이드(Android)/코틀린(Kotlin) (21)
안드로이드 세계
이번 포스팅에는 추가 및 삭제 이벤트를 넣어볼 것이다. 삭제 이벤트는 기본 다이얼로그인 AlertDialog와 롱 클릭 시 나타나는 팝업 메뉴를 사용할 예정이고, 추가 이벤트는 DialogFragment를 이용할 예정이다. 먼저 삭제 이벤트먼저 구현을 해볼 것이다. 기본 다이얼로그를 사용할 것이기 때문에 xml을 따로 추가할 필요는 없다(커스텀을 하기 위해서는 필요함) 메인에 다이얼로그를 추가한다. private fun deleteDialog(position: Int) { val dialog: AlertDialog = this@MainActivity.let { val builder: AlertDialog.Builder = AlertDialog.Builder(it) builder.apply { this.s..
이번 포스팅엔 RecyclerView에 클릭이벤트를 넣어볼 것이다. 이전 포스팅 ryan94.tistory.com/11 [Android] Recycler View - Step 1 리사이클러뷰나 리스트뷰는 리스트형태의 뷰로 보여주기위해 사용되는데, 차이점은 다음과같다. 리사이클러뷰 관련으로 4종류의 포스팅을 작성할 것인데, 이번 포스팅은 기본적인 리사이클러 ryan94.tistory.com 클릭이벤트엔 두 가지 방법이 있는데, 뷰 홀더 내에서 처리하는 것과 인터페이스를 구현하여 콜백을 이용하는 방법이 있다. 1. 인터페이스 이용 메인 xml은 변화가 없다. 메인 액티비티는 다음과 같이 변경한다. class MainActivity : AppCompatActivity(), AnimalAdapter.ItemCl..
리사이클러뷰나 리스트뷰는 리스트 형태의 뷰로 보여주기 위해 사용되는데, 차이점은 다음과 같다. 리사이클러뷰 관련으로 4종류의 포스팅을 작성할 것인데, 이번 포스팅은 기본적인 리사이클러뷰를 만드는 작업을 하겠다. Android Studio 4.1.1 버전으로 올라감에 따라 디펜던시를 추가할 필요가 없지만, 이전 버전을 사용하는 경우 아래의 디펜던시가 필요하다.(정확히 어떤 시점인지는 알 수없으니 아시는 분은 댓글 부탁드립니다.) implementation 'androidx.recyclerview:recyclerview:1.1.0' 이번 예제는 개와 고양이(이름, 휴대전화 번호)를 리스트 형태로 보여주는 것으로 하겠다. 데이터 클래스는 다음과 같이 구성한다. data class Animal( val type..
위치정보를 받기 위해서는 위치정보 퍼미션도 중요하지만, 기기가 위치정보를 on/off 했는지 확인하는 것도 중요하다. 아래의 방법을 사용한다면 위치정보 on/off여부를 알 수있다. fun isEnableLocationSystem(context: Context): Boolean { return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { val locationManager = context.getSystemService(Context.LOCATION_SERVICE) as? LocationManager locationManager?.isLocationEnabled!! }else{ val mode = Settings.Secure.getInt(context...
커스텀 다이얼로그를 사용하다가 보면 원하는 크기대로 다이얼로그가 생성되지 않는다. 아래의 내용은 해당 커스텀 다이얼로그를 디바이스 크기 비율로 조절하는 법이다. 다이얼로그 프래그먼트 fun dialogFragmentResize(context: Context, dialogFragment: DialogFragment, width: Float, height: Float) { val windowManager = context.getSystemService(Context.WINDOW_SERVICE) as WindowManager if (Build.VERSION.SDK_INT < 30) { val display = windowManager.defaultDisplay val size = Point() display...