본문 바로가기

개발자4

안드로이드 LiveData란? 오늘은 안드로이드 AAC JetPack 라이브러리 중 하나인 LiveData에 대해서 알아볼 것이다. LiveData의 경우 장점도 굉장히 많고 다른 라이브러리(DataBinding, ViewModel 등)들과 함께 사용할 경우 훨씬 더 유용하다. MVVM 패턴에 필수적인 LiveData의 개념과 사용법에 대해서 알아보자 LiveData란? LiveData는 데이터의 변경을 관찰할 수 있는 Data Holder 클래스이다. 관찰이라고 하면 Observable이 생각날텐데 일반적인 Observable과는 다르게 LiveData는 안드로이드의 LifeCycle, 즉 생명주기를 알고있다. Activity, Fragment, Service 등과 같은 안드로이드 컴포넌트의 생명주기를 인식하며 그에 따라 LiveD.. 2023. 5. 9.
코틀린 Object와 Companion Object 차이? - kotlin 오늘은 비슷한거 같으면서 다른 Object declaration와 Companion object의 차이에 대해서 알아보려한다. 보통 Kotlin에서 Java의 static과 같은 정적 변수 및 메서드를 사용하기 위해 보통 object나 Companion object를 사용하는데 object부터 차근차근 알아보자. Object declaration이란? Object declaration은 싱글톤 패턴을 더 쉽게 사용하기 위해 코틀린에서 제공하는 일종의 객체 선언 키워드라고 볼 수 있다. 예시 코드를 한번 봐보자. object ObjectDecl { const val OB_STRING = "1" fun obtest() {} } Object는 위와 같은 형태로 선언할 수 있고 다음과 같은 특징이 있다. Sin.. 2023. 4. 28.
안드로이드 CountDownTimer 사용해서 버튼 활성화하는 방법 오늘은 작업하던 앱에서 CountDownTimer를 사용할 일이 생겼다. 사용한 내용에 대해서 정리해보려고 한다. class TimerRest extends CountDownTimer { public TimerRest(long millisInFuture, long countDownInterval) { super(millisInFuture, countDownInterval); } @Override public void onTick(long millisUntilFinished) { // To-Do } @Override public void onFinish() { } } 위 코드는 CountDownTimer의 기본 형식이다. 맨 처음에 CountDownTimer를 상속받는 클래스를 생성해주고 Timer가 필요.. 2023. 4. 23.
안드로이드 파이어베이스(Firebase) 데이터 삭제하는 방법 오늘은 파이어베이스의 데이터를 삭제하는 방법에 대해서 알아볼 것이다. 사진을 보며 차근차근 알아가보자 삭제하기 전 파이어베이스에 데이터가 두개가 있는 것을 볼 수 있다. 먼저 uidList를 선언해준다. private List uidList = new ArrayList(); 그리고 OnDataChange에 uidList.clear()를 추가하여 데이터가 쌓이지 않도록 clear해준다. 그 후 uidKey에 Key값을 받아온 후 uidList.add(uidKey)를 선언해준다. mDatabase.getReference().child(the_uid).child("PetAccount").addValueEventListener(new ValueEventListener() { @Override public voi.. 2023. 4. 22.