본문 바로가기

Java

안드로이드 RxJava #2 Observable 안녕하세요 이번 시간에는 RxJava에 Observable에 대해 알아봅시다. RxJava는 반응형 프로그램입니다. 반응형 프로그램이란? 주변 환경과 끊임없이 상호 작용을 하는 프로그래밍을 의미합니다. 프로그램이 주도하는 것이 아닌 환경이 변하면 이벤트를 받아 동작하도록 만드는 프로그래밍 기법을 말합니다 RxJava에는 Observable(식별가능한)을 subscribe(구독) 하는 Observer(관찰자)가 존재합니다. Observable는 onNext(), onComplete(), onError() 이벤트를 사용하여 동작합니다. onNext() : 하나의 소스 Observable에서 Observer까지 한 번에 하나씩 순차적으로 데이터를 발행합니다. (데이터를 담는다라고 생각하면 편할 듯...) on.. 더보기
안드로이드 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.. 더보기
[안드로이드] #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 그.. 더보기
안드로이드 인스타그램 자바(JAVA) #완성 안녕하세요 유튜브 하울의 코딩 채널에 코틀린으로 작성된 인스타그램을 참고해서 자바(JAVA)로 만들어 보았습니다. 하울의 코딩 채널에 나오는 인스타그램 코드와 제가 작성한 코드를 비교하면서 진행하시면 도움이 될 거 같습니다. 현재 FCM푸시 알림 기능만 만들면 100프로 완성입니다.(미완성) 완벽하다고 말씀은 못 드리지만 그래도 자바로 인스타그램을 만드려고 하시는 분들, 파이어베이스 공부하시는 분들에게 충분히 도움이 될만한 내용이라고 생각합니다. 아래에 깃허브 주소 공유해드리겠습니다. https://github.com/seongwoo31/PSWinstagram/tree/master 더보기
자바(JAVA) 형변환(String, int) 많이 사용하는 내용이지만 계속 찾아보는 내용이죠 String 에서 int 또는 int 에서 String 으로 형변환 하는 내용입니다. String → int String str = "12345"; int i = Integer.parseInt(str); int → String int i = 12345; String str = Integer.toString(i); 더보기
안드로이드 인스타스램 자바(JAVA) #1 로그인 화면 만들기 안녕하세요 오늘부터 안드로이드 인스타그램 관련 코드를 업로드하려 합니다. 유튜브 하울의 코딩 채널을 참고해서 만들었습니다. 코틀린은 많은 정보가 있는데, 자바는 정보가 많이 부족하더라고요. 그래서 자바로 인스타그램을 만들어 보았습니다. 천천히 업로드 예정입니다. 자바를 공부하시거나 자바 인스타그램 클론코딩을 찾는 분들에게 도움이 됐으면 좋겠습니다. 필요하신 분들은 유튜브 하울의 코딩 채널을 참고하면서 저의 코드도 같이 보시면서 진행해 주세요. 이번 내용은 로그인 화면 만들기입니다. 제가 참고한 사이트는 RelativeLayout을 사용했는데 저는 LinearLayout을 좋아하기 때문에 LinearLayout을 사용했습니다. 우선 Login.java와 login.xml 파일을 만들어 줍니다. login... 더보기

반응형