Android/Concept

    [Android] [Kotlin] SharedPreferences

    [Android] [Kotlin] SharedPreferences

    SharedPreferences 사용해서 데이터 저장하기 저장하는 네 가지 과정 ✔ 1단계 : SharedPreference 생성하기 val shared = getSharedPreferences("databaseName", Context.MODE_PRIVATE) ◽ getSharedPreferences()는 Context를 가지고 있는 모든 컴포넌트에서 접근과 호출이 가능하다. ◽ 첫 번째 파라미터 : 입력된 데이터가 저장될 파일명 ◽ 두 번째 파라미터 : 파일 접근 권한, MODE_PRIVATE만 사용한다. ✔ 2단계 : Editor 꺼내기 val editor = shared.edit() ◽ 데이터를 저장하기 위해서는 Editor 인터페이스를 사용해야 한다. ◽ Editor 인터페이스는 edit 메서드..

    [Android] [Kotlin] SQLite

    [Android] [Kotlin] SQLite

    전체 코드 MainActivity.kt 더보기 class MainActivity : AppCompatActivity() { val binding by lazy { ActivityMainBinding.inflate(layoutInflater) } val helper = SqliteHelper(this, "memo", 1) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(binding.root) val adapter = RecyclerAdapter() adapter.helper = helper adapter.listData.addAll(helper.selectMemo()) ..

    [Android] [Kotlin] ViewPager (뷰페이저)

    [Android] [Kotlin] ViewPager (뷰페이저)

    ViewPager2 + Fragment + TabLayout ✔ 각각 화면들이 독립적으로 구성될 필요가 있을 때 Fragment 사용 UI 전체 코드 MainActivity.kt 더보기 더보기 class MainActivity : AppCompatActivity() { val binding by lazy { ActivityMainBinding.inflate(layoutInflater) } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) supportRequestWindowFeature(Window.FEATURE_NO_TITLE) setContentView(binding.root) val fragm..

    [Android] [Kotlin] 인텐트

    [Android] [Kotlin] 인텐트

    액티비티 테스크 관리하기 매니페스트에서 설정하기 launchMode ✔ 호출할 액티비티를 새로 생성할 것인지 재사용할 것인지 결정 ✔ 기본값은 새로 생성하도록 설정되어 있음 ✔ standard, singleTop, singleTask, singleInstance taskAffinity ✔ affinity가 동일한 테스크는 같은 task에 들어간다. ✔ 기본값이 manifest에 정의된 패키지명이므로 한 앱의 모든 액티비티들은 동일한 affinity를 갖는다. allowTaskReparenting ✔ true로 설정할 경우, 호출한 액티비티를 동일한 affinity를 가진 테스크에 쌓이도록 한다. ✔ 기본값은 false이다. clearTaskOnLaunch ✔ true로 설정할 경우, 액티비티가 재실행될 ..

    [Android] [Kotlin] 생명주기

    [Android] [Kotlin] 생명주기

    액티비티의 생명주기 액티비티의 생명 주기 메서드 onCreate() ✔ 액티비티가 만들어질 때 호출 onStart() ✔ 액티비티가 화면에 나타날 때 호출. 화면에 보이기 시작한다. onResume() ✔ 액티비티가 화면에 나타날 때 호출. 실제 액티비티가 실행되고 있는 중이다. onPause() ✔ 액티비티의 화면이 가려질 때 호출. 액티비티의 화면의 일부가 다른 액티비티에 의해 가려진다. onStop() ✔ 액티비티의 화면이 없어질 때 호출. 다른 액티비티가 실행돼서 화면이 완전히 가려질 때 호출된다. onDestroy() ✔ 액티비티가 종료될 때 호출 생명주기 콜백 액티비티를 생성해서 화면에 나타내는 상황 ◽ 액티비티는 onCreate() 메서드로 생성된 다음 화면 구성 요소를 메모리에 로드하고, ..

    [Android] [Kotlin] 리사이클러뷰

    전체 코드 MainActivity 더보기 class MainActivity : AppCompatActivity() { val binding by lazy { ActivityMainBinding.inflate(layoutInflater) } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(binding.root) val data: MutableList = loadData() var adapter = CustomAdapter() adapter.listData = data binding.recyclerView.adapter = adapter binding.recyclerVie..