val clipboard: ClipboardManager = getSystemService(CLIPBOARD_SERVICE) as ClipboardManager val clip = ClipData.newPlainText("label", "STRING") // 클립보드 복사 BUTTON.setOnClickListener { clipboard.setPrimaryClip(clip) Toast.makeText(this, "클립보드에 복사되었습니다.", Toast.LENGTH_SHORT).show() }
val dec = DecimalFormat("#,###") dec.format(123123) // 123,123 참고 [Kotlin] 코틀린 DecimalFormat / 천단위 콤마, 소숫점 넣기 [Kotlin] 코틀린 DecimalFormat / 천단위 콤마 넣기 val dec = DecimalFormat("#,###") var test = 123456 dec.format(test) // 123,456 소숫점 항상 표시 val dec = DecimalFormat("#,###.00") var test =.. skogkatt.tistory.com
위 버튼을 누르면 수량이 올라가고, 아래 버튼을 누르면 수량이 내려가는 간단한 코드를 작성해봤다. LiveData를 사용하지 않는다면 이런식으로 작성할 것이다. private var count = 1 // button을 누르면 증가 될 숫자 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivityEachBinding.inflate(layoutInflater) setContentView(binding.root) binding.ivQuantityUp.setOnClickListener { binding.tvQuantity.text = (++count).toString() } b..
View Binding이란? Kotlin의 장점중 하나는 findViewById를 쓰지 않아도 되는 점이다. kotlin extension을 깔면 바로 접근가능했다. 그러나 코틀린 익스텐션이 deprecated됐고, 안드로이드에서도 뷰 바인딩 사용을 권장하기 때문에 공부해보려 한다. https://developer.android.com/topic/libraries/view-binding 뷰 결합 | Android 개발자 | Android Developers 뷰 결합 뷰 결합 기능을 사용하면 뷰와 상호작용하는 코드를 쉽게 작성할 수 있습니다. 모듈에서 사용 설정된 뷰 결합은 모듈에 있는 각 XML 레이아웃 파일의 결합 클래스를 생성합니다. 바인딩 developer.android.com 뷰바인딩은 뷰와 상호..
Open Class can be inherited 자바와 다르게 클래스의 상속이 불가능한게 default인 코틀린에서는 class 앞에 open을 달아줘야 상속이 가능해진다. Abstract Class must be inherited, cannot be initiated 상속이 가능한 open클래스와 다르게 추상클래스는 상속이 필수적이다. 즉 얘 자체로 객체를 만들어서 쓰기 위함이 아니라 상속을 위한 클래스. What is the difference between open class and abstract class? abstract class ServerMock(param: String) { protected var someVar = params + "123" fun justMyVar() = someV..
ExoPlayer2 ExoPlayer는 안드로이드용 미디어 플레이어로, 로컬 및 인터넷의 음성, 영상 파일들을 재생할 수 있다. 안드로이드 내장 기능인 MediaPlayer API에서 제공하는것들 뿐만 아니라 추가 기능들도 지원하는데, 사용할때 별도의 복잡한 설정 없이 커스터마이징하거나 상속할 수 있어서 매우 편리하다. 실제로 YouTube앱도 ExoPlayer를 사용해서 구현했다고! 기능별 지원하는 형식(mp4, avi...)은 모두 이 링크에서 확인할 수 있다. 설정 build.gradle(project)의 레포지토리에 두 개 다 있는지 확인 repositories { google() jcenter() } build.gradle(:app)에 추가 dependencies { implementation ..
예전에는 바 그래프 형태로 보여줬던 자료가 이번 업데이트에서 오각형 그래프로 디자인이 바뀌었다. 중심점을 고정하고, 고정되는 부분인 회색 오각형을 각각 다른 사이즈로 4개 그려준 후, 데이터에 따라 달라지는 파란 영역의 오각형을 그려서 올리는 방식으로 구현하려 했다. 따라서 오각형 그리기 라이브러리를 찾아봤으나 육각형만 많고 오각형은 찾을 수가 없었다. Android Pentagon, Android draw pentagon.. 여러 키워드로 검색을 많이 했는데 참고 할 수 있는 코드를 찾기 쉽지가 않았다. 그래서 안드로이드 오픈카톡 고수님들께 질문했고, 캔버스에 onDraw를 사용해서 직접 그리면 된다는 답변을 받았다. (이 톡방 정말 좋다. 아는 선에서 꼽주지 않고 친절하게 도움 주시는 분들이 많음ㅜㅜ..
- Total
- Today
- Yesterday
- 안드로이드 키해시
- 백준 1806
- 백준
- 소수 구하기 파이썬
- 투포인터 알고리즘 파이썬
- 백준알고리즘
- 시뮬레이터 키보드
- 안드로이드 카카오톡으로 로그인
- 코틀린 리스트뷰
- counting sort
- Kotlin
- 카카오 키해시
- 코틀린 뷰바인딩
- 프로그래머스
- 코틀린
- 코틀린 뷰페이저
- 안드로이드
- 전화번호목록 파이썬
- 데이터바인딩 뷰바인딩 차이
- 코틀린 바텀네비게이션
- TextFormField keyboard
- flutter simultor
- 카카오톡으로 로그인 오류
- 백준 2003
- 백준 1644
- 코틀린 데이터바인딩
- 투포인터 알고리즘
- 카카오 기출
- kotlin fragment
- 파이썬 최대공약수
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |