본문 바로가기

개발노트104

java 기초 개요 자바에 입문하기 앞서 전통적인 문구 hello ~를 출력해보고 반복문도 적용해보자. 다른 언어와의 차이점도 한 번 떠올려보면 재밌는 공부가 되는 것 같다. 1. 문자열 출력 1) 자바 public class HelloJava { public static void main(String[] args){ System.out.println("Hello java"); // 값을 콘솔에 출력하는 것 } } 2) 코틀린 class HelloKotlin private fun main(){ println("Hello kotlin") } 코틀린에서 얼마나 간소화 되었는지 알 수 있는 부분이다. java 코드를 한 번 뜯어보자 public 접근제한자다. 이는 당연하게도 코틀린과 동일하다 public으로 선언되었기 때문.. 2024. 1. 24.
Room Database 1. 의존성 안정화 버전 확인 : https://developer.android.com/topic/libraries/architecture/room?hl=ko Room 지속성 라이브러리 | Android 개발자 | Android Developers Room 라이브러리 사용 방법을 알아봅니다. developer.android.com plugins { id("com.android.application") id("org.jetbrains.kotlin.android") id("kotlin-kapt") } val room_version = "2.6.0-rc01" implementation("androidx.room:room-runtime:$room_version") annotationProcessor("andro.. 2024. 1. 16.
SingleLiveEvent import android.util.Log import androidx.annotation.MainThread import androidx.lifecycle.LifecycleOwner import androidx.lifecycle.MutableLiveData import androidx.lifecycle.Observer import java.util.concurrent.atomic.AtomicBoolean /** * A lifecycle-aware observable that sends only new updates after subscription, used for events like * navigation and Snackbar messages. * * * This avoids a common pr.. 2024. 1. 16.
ViewModel,Repository 1) ViewModel class ViewModel( private val repository: HomeRepository ) : ViewModel() { } 2) Factory 패턴 class ViewModelFactory( ) : ViewModelProvider.Factory { override fun create(modelClass: Class): T { if (modelClass.isAssignableFrom(HomeViewModel::class.java)) { return HomeViewModel( HomeRepositoryImpl(RetrofitClient) ) as T } else { throw IllegalArgumentException("Not found ViewModel class.").. 2024. 1. 16.
ViewPagerAdapter,navibar 1. ViewPagerAdatper 1) ViewPagerAdapter class ViewPagerAdapter( fragmentActivity: FragmentActivity ) : FragmentStateAdapter(fragmentActivity) { private val fragments = mutableListOf() init { fragments.apply { } } override fun getItemCount(): Int { return fragments.size } override fun createFragment(position: Int): Fragment { return fragments[position] } } 2) ViewPager연결 mainViewpager.adapter = v.. 2024. 1. 16.
파이널프로젝트 4주차 3일 https://hayeon1549.tistory.com/7 [Android] Material Design Text fields(EditText) 적용 01. build.gradle 의존성 추가 repositories에 다음 코드가 있는지 확인한다. [Gradle Scripts] - [build.gradle(Project: 프로젝트명)] buildscript { repositories { google() jcenter() } } 원하는 버전의 material을 dependencies에 추 hayeon1549.tistory.com https://android-dev.tistory.com/44 [Android/Kotlin] 안드로이드 TextInputLayout 사용해보기 안녕하세요. 오늘은 TextInput.. 2023. 11. 1.