resoulution(해상도) : 320 * 480, 1080 * 1920 등과 같이 가로 세로 픽셀 수를 나타냄 density(밀도) 이것은 Density Independent Pixel(DIP, 밀도와 무관한 픽셀) 단위에 쓰이는 곱하기 인자(scaling factor)입니다. resources.displayMetrics.density 1inch = 2.54cm dpi = dots per inch 1density = 160dpi 2density = 320dpi

1. BottomNavigationView 2. BottomNavigationView + ViewPager2 menu.xml BottomNavigationView bottom_navigation_menu.xml HomeFragment.kt package com.example.bottomnavigationexample import androidx.fragment.app.Fragment class HomeFragment : Fragment(R.layout.fragment_home) FavoritesFragment.kt package com.example.bottomnavigationexample import androidx.fragment.app.Fragment class FavoritesFragment :..

1. just import io.reactivex.Observable class RxJavaExample { fun emit() { Observable.just("Hello", "RxJava 2!!", 123) .subscribe { data -> println(data) } } } fun main() { val rxJavaExample = RxJavaExample() rxJavaExample.emit() } import io.reactivex.Observable fun main() { val observable = Observable.just("A", "B", "C") val disposable = observable.subscribe( { v -> println(v) }, { err -> printl..

fun main() { val button: View = Button() button.click() } abstract class View { abstract fun click() } class Button: View() { override fun click() { println("Button") } } abstract class는 abstract fun을 가진다. abstract fun의 바디는 구현할 수 없다. fun main() { val button: View = Button() button.click() } open class View { open fun click() { println("View") } } class Button: View() { override fun click() { sup..

fun main() { val name = "Richard" println(name.lastChar()) } // 확장함수 fun String.lastChar(): Char = this[this.length - 1] // 아래와 동일 // fun String.lastChar(): Char = this.get(this.length - 1) // fun String.lastChar(): Char = get(length - 1) 수신 객체 타입(receiver type) : String.lastChar()의 String 수신 객체(receiver object) : this fun main() { val listString = listOf("A", "B", "C") val listNumber = listOf(1..
Android Navigation DeepLink : 앱 내의 특정 페이지로 이동한다. 1. 명시적 딥링크 (explicit deeplink) 사용자가 명시적 딥 링크를 통해 앱을 열면 백 스택이 삭제됨 2. 암시적 딥링크 (implicit deeplink) 앱의 특정 대상을 나타내는 URI 입니다. 암시적 딥링크를 트리거 할 때 Intent가 Intent.FLAG_ACTIVITY_NEW_TASK 플래그와 함께 실행되었는지 여부에 따라 다르다. 플래그가 설정됐으면 백스택이 삭제된다. 플래그가 설정돼있지 않으면 뒤로가기 버튼 눌렀을 때 이전 앱으로 돌아간다.
- Total
- Today
- Yesterday
- Android
- java
- 안드로이드 #코틀린 #Android #Kotlin
- activity
- ViewPager2
- MVVM
- CoordinatorLayout
- TabLayout
- JSONObject
- coroutine
- DataBinding
- Design Pattern
- Intent
- recyclerview
- handler
- Livedata
- fragment
- 코틀린
- James Kim
- Architecture Pattern
- Kotlin
- JSONArray
- Vue.js #Vue.js + javascript
- View
- ArrayList
- ViewModel
- 안드로이드
- 자바
- 혀가 길지 않은 개발자
- XML
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |