• [Android][Kotlin] NumberPicker 넘버피커 숫자 선택

    앱을 만들면서 유저로부터 숫자를 입력받아야 할 때가 있다. 일일히 타이핑을 해야 하는 EditText보다 NumberPicker 넘버피커를 이용하면 더 쉽게 숫자를 선택할 수 있다. NumberPicker 넘버 피커는 안드로이드 스튜디오의 Palette - Advanced - NumberPicker를 통해 레이아웃에 추가할 수 있다. 코틀린에서는 findViewById 할 필요가 없으므로, MainActivity에서 id를 입력해서 import 한다. 우선 넘버피커의 최소...


  • 2017-12-20-성실도

    성공한 것 성공이라 하기 어렵지만 한 달동안 GitHub 커밋 출석 개근을 했다. 독학 공부 습관 만드는 데에 큰 도움이 되었다. 실패한 것 그러나 이게 나는 택도 없이 부족한 공부량이라는 잘 알고 있다. 그리고 예상대로, 나는 강박을 가지고 커밋만 하고 있다. 더 이상 이럴 필요는 없을 것 같다. CommitNote가 아니라, StudyNote로서의...


  • [Android][Kotlin] SharedPreferences 데이터 영구 저장

    SharedPreferences 데이터를 영구 저장하는 방법으로는 SharedPreferences(쉐어드프리퍼런스)가 있다. App에 포함되는 데이터 파일을 만들어서, 디바이스에 저장하는 방식이다. (key, value) 형태로 저장/로드한다. 또한 .edit() 에디터를 이용해야 데이터의 수정, 삭제 등의 액션이 가능하다. 주로 ‘editor’라는 변수명에 저장해서 사용한다. MainActivity의 onCreate에서 쓸 수 있는 SharedPreferences 예제는 다음과 같다. val pref = this.getPreferences(0) val editor =...


  • [Android][Kotlin] Dialog 다이얼로그

    Dialog는 사용자에게 결정을 내리거나 추가 정보를 입력하라는 prompt를 보내는 작은 창이다. Dialog 클래스가 기본이지만, 직접 인스턴스화해서 사용하지 않는다. 대신, AlertDialog, DatePickerDialog, TimePickerDialog 서브클래스를 사용한다. DatePickerDialog와 TimePickerDialog는 날짜 또는 시간을 선택하기 편하도록 미리 UI가 지정되어 있는 서브클래스이다. AlertDialog로는 간단한 메세지를 담을 수 있으며, 직접 커스텀한 레이아웃을 사용하면 활용 범위가 넓어진다. 커스텀...


  • [Android] 안드로이드 키보드 숨기기

    EditText에 내용을 쓰고 버튼을 누르는 등 액션을 할때, 하단의 키보드가 자동으로 사라지게 하는 것이 사용하기 편하다. InputMethodManager를 이용해서 System Service에 접근해 제어가 가능하다. java에서 하기 View view = this.getCurrentFocus(); if (view != null) { InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(view.getWindowToken(), 0); } kotlin에서 하기 fun View.hideKeyboard() { val imm = context.getSystemService(Context.INPUT_METHOD_SERVICE)...