본문 바로가기
반응형

Android90

[Kotlin] SQLiteDatabase 기본적인 사용 방법 우선 DbTestActivity 를 Empty Activity 로 생성. ViewBinding 으로 설정 class DbTestActivity : AppCompatActivity() { private lateinit var binding: ActivityDbTestBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivityDbTestBinding.inflate(layoutInflater) setContentView(binding.root) } } layout 의 root layout 을 LinearLayout 으로 변경하고, 4개의 버튼과 1개의 TextView.. 2023. 8. 10.
[Kotlin] Android Camera 사용하기 Android Camera 사용하기 권한 카메라를 사용하기 위해서는 카메라 권한부터 얻어야 합니다. 흐름은 아래와 같습니다. Manifest 에 다음 항목 추가 ..생략.. dependencies 추가 build.gradle(app) 의 dependencies 에 다음 항목 추가하고 우측상단에 [Sync Now] 클릭해서 받아옵니다. def camerax_version = "1.0.0-rc01" def camerax_view_version = "1.0.0-alpha20" implementation "androidx.camera:camera-camera2:${camerax_version}" implementation "androidx.camera:camera-lifecycle:${camerax_versio.. 2023. 8. 4.
[Kotlin] Json String (List) 을 Data Class 로 변환 (GSON) Json String (List) 을 Data Class 로 변환 (GSON) 이전 글에서 휴일 정보를 Json 으로 가져왔습니다. 참고 https://date.nager.at/api/v2/publicholidays/2023/KR 위의 호출 결과를 Data Class 로 매핑할 경우 아래와 같은 data class 로 만들 수 있습니다. data class PublicHolidays( @SerializedName("date") val date: Date, @SerializedName("localName") val dateName: String, @SerializedName("name") val engName: String, @SerializedName("countryCode") val locale: St.. 2023. 8. 2.
[Kotlin] HttpUrlConnection 사용하여 api 호출하기 manifest 에 권한 추가 Activity 생성 HttpActivity ViewBinding 하도록 소스 수정 class HttpActivity : AppCompatActivity() { private lateinit var binding: ActivityHttpBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivityHttpBinding.inflate(layoutInflater) setContentView(binding.root) } } layout UI Thread 가 아닌 Background Thread 에서 작업하기 위해서 ThreadExecutor.. 2023. 8. 2.
[Kotlin] svg, png 추가하고 사용하기 우선 무료로 icon 받는 사이트에서 svg 또는 png 를 다운로드 받습니다. https://www.iconfinder.com/ https://iconmonstr.com/ SVG 안드로이드 스튜디오에서 File > New > Vector Asset 위에서 다운로드 받은 SVG 를 선택합니다. 적당한 이름으로 변경하고, Next 를 누릅니다. 저장 경로를 확인하고 Finish 를 누릅니다. @drawable/.. 을 입력하면 목록에 표시가 됩니다. PNG 다운로드 받은 png 파일을 복사 후 res > drawable 에 붙혀넣기 (CTRL+V or Command+V) 하면 폴더 선택이 나옵니다. "drawable"은 모든 안드로이드 버전에서 지원되는 리소스 폴더이고, "drawable-v24"은 안드로.. 2023. 8. 1.
[Kotlin] Class 생성자 간단한 Class class User(var name: String) val user1 = User("Hello") println(user1.name) // Hello user1.name = "Bryan" println(user1.name) // Bryan 위의 class 에서 var 대신 val 로 수정하면, 아래 라인에서 오류 발생 user1.name = "Bryan" // 오류 일반적인 Class class User { var name: String? = null var age: Int? = null lateinit var group: String } val user1 = User() user1.name = "hello" print(user1.name) // hello lateinit 를 할당하지 .. 2023. 8. 1.
[Kotlin] Fragment 와 BottomNavigationView 사용 dependencies 에 다음 추가. (이미 있을수도) implementation 'com.google.android.material:material:1.8.0' 테스트 해볼 새로운 Empty Activity 생성 Layout 파일에서 ConstraintLayout 을 LinearLayout 으로 변경 (이 작업은 필수는 아닙니다. 위에는 pager, 아래는 tabLayout 만 배치하면 됩니다.) root layout 에 android:orientation="vertical" 을 추가합니다. Layout 은 아래와 같은 코드입니다. FrameLayout 에는 Fragment 가 들어갑니다. 그리고 BottomNavigationView 의 menu 는 아래와 같습니다. Fragment 를 3개를 생성해.. 2023. 7. 31.
[Kotlin] FrameLayout 사용해서 Fragment 써보기 androidx.fragment 1.2.0 이상부터 쓸 수 있는 FragmentContainerView 가 있습니다. FragmentContainerView 를 사용하는 방법은 여기에 작성했습니다. Fragment 를 생성합니다. 생성할 위치에서 New > Fragment > Fragment(Blank) 를 클릭해서 만듦니다. 그리고 fragment 의 layout 에 EditText 나 Button 등을 몇개 추가합니다. 그리고 Activity 에 아래와 같은 FrameLayout 을 추가합니다. 그리고 MainActivity.kt 의 onCreate 에 아래 코드를 입력합니다. supportFragmentManager .beginTransaction() .replace(binding.mainFrame.. 2023. 7. 28.
[Kotlin] Activity 에서 Fragment 변경하기 Activity 에서 Fragment 변경하기 Fragment 1 에서 버튼을 클릭하여 상위 Activity 의 method를 호출하고, (이전 글 참고) 그 method 에서 Fragment 1 을 Fragment 2 로 변경하는 것을 해보겠습니다. 이전 글에 이어서 작성하는 것이라서 혹시 따라하기를 원하신다면 이전 포스트를 먼저 보시고 오시면 됩니다~ 우선 Fragment 하나를 더 만들어보겠습니다. 이름은 LogoutFragment 자동으로 생성된 코드는 지우고, viewBinding 으로 사용할것이므로, 다음과 같이 코드를 작성합니다. class LogoutFragment : Fragment() { lateinit var binding: FragmentLogoutBinding override fu.. 2023. 7. 28.
[Kotlin] Fragment 에서 상위 Activity Method 호출하기 Fragment 에서 상위 Activity Method 호출하기 이전 글에 이어서 작성하는 것이라서 혹시 따라하기를 원하신다면 이전 포스트를 먼저 보시고 오시면 됩니다~ 아래 이미지는 현재 테스트 하려는 Activity 와 Fragment 구조입니다. fragment 에서 자신을 포함하고 있는 Activity 의 method 를 호출할 수 있습니다. 우선 상위 Activity 에 method 를 만들겠습니다. fun someMethodInActivity(num: Int){ Log.d("someMethodInActivity", "parameter : $num") } 그리고 위에서 작성한 Fragment 에서 login 버튼을 클릭했을 때, 이 메소드를 호출합니다. 버튼에 id 속성을 확인하고, (없다면 입.. 2023. 7. 28.
728x90
반응형