Android

    Kotlin 리스트뷰 어댑터 사용하기

    Kotlin 리스트뷰 어댑터 사용하기

    리스트뷰를 사용하기 위해서는 어댑터 클래스를 선언해주어야한다. 또한 리스트뷰에 들어갈 레이아웃 xml도 생성해준 뒤 이를 연결시켜야한다. . kotlin으로 찾아보면 리스트뷰보다도 리사이클러뷰가 많았는데 Realm과 관련된 정보가 많지 않아 리스트뷰를 택했고, 리스트뷰로 충분히 원하는 것을 구현가능하다고 생각했다. import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.TextView import com.example.whisperapp.todo.Todo import io.realm.OrderedRealmCollection import io.realm.Realm..

    Kotlin Realm  DB 사용시 발생한 오류 해결하기

    Kotlin Realm DB 사용시 발생한 오류 해결하기

    안드로이드 스튜디오에서 Kotlin에서 Realm DB를 사용시 Mirgration 에러를 자주 만나게 되었다. 이 오류를 해결해주기 위해서는 아래의 코드를 사용해주어야 하는데 상황은 다음과 같다. 다른 액티비티에서 사용한 Realm 인스턴스를 현재 액티비티로 가져오는 상황이다. Migration 오류 발생에 대비하여 try-catch 문을 이용해주었다. val realm = try { val config = RealmConfiguration.Builder() .deleteRealmIfMigrationNeeded() .build() Realm.getInstance(config) } catch (ex: RealmMigrationNeededException) { Realm.getDefaultInstance(..

    SQLite에서의 데이터 베이스 구축

    SQLite에서의 데이터 베이스 구축

    ✔ 데이터 베이스란? 서로 관련된 데이터를 체계적으로 구조화하여 저장하는 것 ✔ DBMS (관계형 데이터 베이스 관리 시스템) - 데이터베이스를 관리해주는 시스템 또는 소프트웨어 - 데이터 개체를 사용자들이 이해하기 쉽게 테이블 형태로 표현 - DBMS에는 여러 개의 데이터베이스를 만들 수 있으며, 하나의 데이터베이스에는 여러 테이블이 논리적으로 연결됨 ✔ SQLite - 안드로이드 폰에 내장되어있는 가벼운 관계형 데이터베이스 관리 시스템 - 모든 데이터베이스시스템에서 사용 가능한 표준 SQL과 일부 추가적 기능 제공 ◾ 안드로이드 앱 개발을 위한 SQLite 동작방식 ◾ 안드로이드 앱 개발을 위한 SQLite 클래스에서 주로 사용되는 메소드 클래스 또는 인터페이스 메소드 주 용도 SQLiteOpenHe..

    Kotlin 실로폰 만들기

    Kotlin 실로폰 만들기

    ✔ 실로폰 기능 - 가로 화면으로 고정된 액티비티에 각 음계에 해당되는 음판을 배치한다. - 음판을 누르면 해당 음이 재생된다. ✔ SoundPool 사용 ✔ 소스코드 ◾ activity_main.xml - 8개의 음판 배치 ◾ MainActivity.kt - 가로 모드로 고정하기 위해서 아래 코드 사용 requestedOrientation=ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE - AndroidManifest.xml에서도 변경 가능하다.

    Kotlin 수평측정기 만들기

    Kotlin 수평측정기 만들기

    ✔ 수평측정기 기능 - 수평 유지를 위해 기기를 평평하게 놓아 원이 중앙에 오게 한다. - x축 값에 따라 원이 좌우로 움직인다. - y축 값에 따라 원이 상하로 움직인다. ✔ Sensor 사용 - 안드로이드에서 제공하는 Sensor 클래스 중 가속도 센서를 이용한다. - SensorManager 인스턴스를 얻고 getDefaultSensor()메서드에 지정하여 Sensor 객체를 얻는다. - OnResume() 메소드에서 refisterListener() 메소드로 센서 감지를 등록한다. - OnPause() 메소드에서 unregisterListener() 메소드로 센서 감지를 해제한다. => 액티비티의 생명주기에 대해 공부해야한다. ✔ 소스코드 ◾ MainActivity.kt - 가속도 센서값을 읽어와..

    Kotlin 나만의 웹브라우저 만들기

    Kotlin 나만의 웹브라우저 만들기

    ✔ 웹브라우저 기능 - URL 주소를 입력하여 검색버튼을 누르면 웹페이지가 화면에 표시된다. - 옵션메뉴는 하위메뉴로 검색사이트와 개발자 정보로 구성된다. - 홈아이콘을 클릭하면 미리 설정한 홈페이지가 표시된다. ✔ 소스코드 ◾ activity_main.xml - WebView와 메뉴, 옵션 메뉴, 컨텍스트 메뉴를 사용 - 웹페이지 주소 공유 방법은 암시적 인텐트 이용 +imeOptions에서 actionSearch를 선택해서 키보드 아이콘을 체크->돋보기로 변경. ◾ MainActivity.kt - MainActivity 코틀린 파일을 작성하기전에 안드로이드에서 특정권한이 필요한 동작을 할 때, 권한을 추가 해줘야한다. - AndroidManifest.xml 파일에 인터넷 권한을 추가해준다. - web..