shape안에 solid, size를 넣어준다.
앱의 데이터를 내부 저장소에 저장하는 방법 중 공유된 프리퍼런스(SharedPreferences)를 사용하는 방법이 있다. 플랫폼 API에서 제공하는 클래스로, 데이터를 키-값 형태로 저장할 때 사용한다. SharedPrefercenes는 앱의 간단한 데이터를 저장하는
postDelayed와 removeCallbacks 함수를 사용하기 위해 Runnable 객체를 선언해주도록 한다.postDelayed(Runnable r, long delayMiils)두 개의 인자로 Runnable과 지연될 시간 millis를 넣어준다.removeC
위와 같이 ImageView를 2x3 모양으로 만드려면 한 행당 LinearLayout 하나가 필요하다.LinearLayout은 ImageView를 수평 또는 수직으로 이어붙일 수 있는데, orientation으로 설정이 가능하다. 옵션은 horizontal, vert
코틀린의 모든 타입은 기본적으로 null이 될 수 없는 타입이다.코틀린은 null이 될 수 있는 타입을 명시적으로 지원한다. \- 타입 옆에 물음표(?)를 표시한다. null이 될 수 있는 타입의 변수이지만, 현재 nll이 아님을 주장할 수 있다. \- 느낌표 2개
필요한 권한 획득을 위해 사용자에게 요청한다.사용자가 퍼미션을 허용했는지 확인하기 위해 checkSelfPermission() 함수를 이용한다.PackageManager.PERMISSION_GRANTED : 권한을 허용한 경우PackageManager.PERMISSIO
위 코드는 이미지를 intent를 통해 외부 앱(갤러리)에서 가져오려고 할 때 사용되는 코드이다.여러 장의 이미지를 한 번에 가져오려고 할 때는 아래와 같이 코드를 작성할 수 있다.
위 사진은 seekBar다여러 개 있는 것들이 tick_mark하나 있는 것은 thumb모양은 drawable 폴더에 생성하여 가져왔다.seekBar 안드로이드 공식 문서(https://developer.android.com/reference/android/w
countdowntimer 안드로이드 공식 문서(https://developer.android.com/reference/android/os/CountDownTimer\`\`\` object : CountDownTimer(30000, 1000) { }.start
안드로이드의 소리 기능을 사용하려면 위와 같이 선언해준다.안드로이드의 soundPool로 준비한 .mp4 파일을 load한다.3번째 인자는 priority다.2번째 인자부터 마지막 인자는 leftVolume, rightVolume, priority, loop, rate
서버에서 json 형태의 데이터를 string으로 가져왔을 때 json 형태의 데이터로 파싱해야하는 경우가 있다.jsonObject에는 키-값 형태의 데이터가 들어있다.
LayoutInflater는 레이아웃 XML 파일을 통해, 메모리에 로딩 후 View 객체를 실체화해주는 역할을 한다. 즉, 화면을 구성하는 XML 리소스를 View 객체로 만들어 반환해주는 역할을 한다.
context
어댑터는 뷰 홀더의 뷰에 데이터를 출력해 각 항목을 만들어 주는 역할을 한다. 리사이클러 뷰를 위한 어댑터는 RecyclerView.Adapter를 상속받아 작성한다.getItemCount() : 항목 개수를 판단하려고 자동으로 호출된다.onCreateViewHolde
뷰 바인딩(view binding)은 레이아웃 XML의 view component에 접근하는 object를 반환받아 view에 접근하는 방식이다.module 수준의 gradle 파일에서 위와 같이 선언한다.이렇게 하면 레이아웃 XML 파일에 등록된 뷰 객체를 포함하는
설명
RoomDB사용하기
링크텍스트링크텍스트
링크텍스트링크텍스트링크텍스트