본문 바로가기

자바

안드로이드 Retrofit 통신 사용방법 안녕하세요 이번 시간에는 Retrofit 통신에 대해 알아보겠습니다. Retrofit은 http 통신을 쉽게 사용할 수 있게 만든 라이브러리입니다. 현업에서 많이 사용한다고 하니 기본적인 것은 꼭 알아두는 것이 좋을 것 같습니다. 여기에 있는 JSON형태의 데이터들을 가져올 것입니다. https://jsonplaceholder.typicode.com/posts/1 우선 Gradle에 다음과 같은 내용을 추가해 줍니다. //1 implementation 'com.squareup.retrofit2:retrofit:2.6.4' //2 implementation 'com.squareup.retrofit2:converter-gson:2.6.4' 1. Retrofit을 사용하겠다는 의미입니다. 2. JSON 데이터.. 더보기
안드로이드 RxJava #3 Cold Observable, Hot Observable 안녕하세요 이번 시간에는 Cold Observable과 Hot Observable에 대해 알아보겠습니다. Observable을 구현하는 방식에는 2가지가 있습니다. 미묘한 차이지만 전혀 다른 결과를 보여줍니다. Cold Observable과 Hot Observable가 있습니다. Cold Observable는 처음부터 발행된 아이템을 구독한다. Hot Observable는 아이템이 발행된 이후 모든 구독자에게 동시에 같은 아이템을 발행한다. 예를 들어 설명하면 Cold Observable 는 유튜브 동영상을 재생하는 것처럼, 구독을 요청하면 아이템을 발행한다. Hot Observable 는 유튜브 라이브 방송을 시청하는 것처럼, 아이템 발행이 시작된 이후 모든 구독자에게 동시에 같은 아이템을 발행한다. .. 더보기
안드로이드 LiveData 사용 방법(ViewModel) 안녕하세요 이번 시간에는 LiveData에 대해 알아보겠습니다. LiveData는 Observer기법을 사용합니다. LiveData는 관찰 가능한 데이터 홀더 클래스입니다. 쉽게 말해서 Observer가 LiveData를 관찰하고 있으며 변화가 있을 때 onChanged 이벤트를 발생시킵니다. LiveData는 읽을 수 있지만 변경할 수는 없습니다. 데이터를 변경하고 싶으면 MutableLiveData를 이용해야 합니다. 이름에서 알 수 있듯이 MutableLiveData는 데이터를 변경할 수 있습니다. ViewModel 내부에서 데이터는 편집 가능해야 하므로 MutableLiveData 를 사용합니다. ViewModel 외부에서 데이터를 읽을 수 있지만 편집은 불가능합니다. 그래서 외부에 보여지는 데이.. 더보기
안드로이드 DataBinding 사용 방법 안녕하세요 이번 시간에는 DataBinding에 대한 글을 업로드하려 합니다. DataBinding은 요즘 많이 사용하는 MVVM패턴의 기초되는 내용입니다. 그럼 시작하겠습니다. 버튼을 만들고 그 버튼을 클릭하면 버튼의 text값을 변경하는 앱을 만들었다고 가정해 봅시다. layout에서 버튼을 만들어주고 id 값을 설정해 줍니다. 이후 Main에서 findViewByid를 통해 버튼을 선언해 주고 버튼을 클릭하면 setText()를 통해서 버튼의 text값을 변경할 것입니다. 문제없이 정상적으로 출력될 것입니다. 하지만 만약에 버튼이 100개 라면 100개를 모두 선언해야 사용할 수 있습니다. 이러한 방법은 비효율 적입니다. DataBinding은 findViewByid를 대체하는 기술입니다. find.. 더보기
[안드로이드] #3 크롤링+리사이클러뷰 (주식, 코인 평단가 계산기 + 크롤링 + 바텀네비게이션뷰) 안녕하세요 이번 시간에는 크롤링을 하고 리사이클러뷰에 담아보는 것을 해보겠습니다. 이전 블로그 내용과 이어지는 내용입니다. 혹시 이전 블로그를 아직 보지 못하신 분들은 아래 링크를 클릭해 먼저 봐주세요 https://adc6981.tistory.com/9 [안드로이드] #2 주식, 코인 평단가계산기 (주식, 코인 평단가 계산기 + 크롤링 + 바텀네비게이션 안녕하세요 이전 블로그 내용과 이어지는 내용입니다. 혹시 이전 블로그를 아직 보지 못하신 분들은 아래 링크를 클릭해 먼저 봐주세요 https://adc6981.tistory.com/8 [안드로이드] #1 바텀네비게이션뷰 adc6981.tistory.com 우선 화면 구성부터 해보겠습니다. frag2.xml android:background="@drawa.. 더보기
[안드로이드] #2 주식, 코인 평단가계산기 (주식, 코인 평단가 계산기 + 크롤링 + 바텀네비게이션뷰) 안녕하세요 이전 블로그 내용과 이어지는 내용입니다. 혹시 이전 블로그를 아직 보지 못하신 분들은 아래 링크를 클릭해 먼저 봐주세요 https://adc6981.tistory.com/8 [안드로이드] #1 바텀네비게이션뷰 (주식, 코인 평단가 계산기 + 크롤링 + 바텀네비게이션뷰) 안녕하세요 이번 시간에는 주식 평단가 계산기를 만들어 볼게요 주식 평단가 계산기만 만드는 것이 아니라 현재 코스피, 코스닥 지수와 네이버 금융 주요 뉴스를 크롤링하는 것을 포스팅하겠습 adc6981.tistory.com 이번 시간에는 Frag1에 주식, 코인 평단가 계산하는 것을 해보겠습니다. 먼저 화면 구성을 해주겠습니다. RelativeLayout을 이용해 frag1.xml 만들어 보겠습니다. RelativeLayout이 생.. 더보기
[안드로이드] #1 바텀네비게이션뷰 (주식, 코인 평단가 계산기 + 크롤링 + 바텀네비게이션뷰) 안녕하세요 이번 시간에는 주식 평단가 계산기를 만들어 볼게요 주식 평단가 계산기만 만드는 것이 아니라 현재 코스피, 코스닥 지수와 네이버 금융 주요 뉴스를 크롤링하는 것을 포스팅하겠습니다. 총 3편으로 나눠서 업로드하겠습니다. 1. 바텀네비게이션뷰 화면 구성 2. 주식 평단가 계산기 3. 크롤링 오늘은 바텀네비게이션뷰 화면 구성을 해보겠습니다. 바텀네비게이션뷰를 이용해 2개의 프래그먼트를 만들어 주겠습니다. 천천히 제가 하는 것을 따라 하시면 위와 같은 결과물을 만들 수 있습니다. menu를 만들어줍니다. res→new→Directory에서 menu라는 새로운 Directory를 그러면 menu라는 파일이 생성됩니다. 여기에 bottom_menu.xml파일을 만들어줍니다. bottom_menu.xml 그.. 더보기
안드로이드 생명주기 (LifeCycle) 정리 (JAVA) 안녕하세요 이번에는 안드로이드 생명주기에 대한 글입니다. LifeCycle이라고도 불리는 생명주기입니다. 안드로이드를 공부하다보면 생명주기를 활용할 때가 있습니다. 안드로이드 생명주기에는 여러가지가 있습니다. 안드로이드 스튜디오에서 Log를 찍어서 생명주기가 언제 실행되는지 확인해 봅시다. 우선 간단하게 화면 구성을 해봅시다. activity_main.xml activity_sub.mxl 이후 자바 파일을 만들어줍니다. MainActivity package com.psw.lifecycle; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.os.Bundle; import android... 더보기

반응형