리스트 예시: 게시물이 존재할 경우 3건을 노출합니다.
-
개발일기
8월 한달 토이 프로젝트를 해보자! -10 : Firebase 실패기 (진행중)
일단 회원가입 페이지 및.. 만들었는데, Detail 페이지는 앞의 LogIn, ListFragment를 적절히 섞은 것과 비슷한 형태라 할 수 있다. (만들어는 놓았지만 포스팅은 생략하겠다는 말) 이제, 메인스트림의 틀은 잡혔다고 본다. 계속 이걸 유지하고 세팅, 새 포스트 작성 등 다른 요소를 추가하기에는... 심심하다. 둘도 결국 UI밖에 건드리지 못할테니까. 그런고로, 이제 만들어봅시다 데이터! firebase를 프로젝트에 연결하는 것으로 시작한다. 우선 프로젝트를 추가하는 것으로 시작할 것이다. 프로젝트 이름은... 음... 그냥 앱 이름으로 할까? 근데 나 이거 블로그에 썼나? 왜 기시감이 들지.. 프로젝트 레벨 build.gradle에 아래와 같이 추가해준다. buildscript { dep..
-
개발일기
8월 한달 토이 프로젝트를 해보자! -09 : Adapter 높이 programmatically 설정해주기
다음 단계로 넘어가기 전에, 계속 거슬렸던 DiaryListBindingAdapter 의 높이를 설정해주자. 미리 말했듯, 별도의 인자를 넘기지 않고 다이렉트로 설정해주기 위해서 전역변수들을 모아 관리하는 StaticValue 클래스를 만들어주었다. 나중에 넓이값이 필요해질 수 있으니, 일단은 넓이와 높이를 모두 저장하도록 하자. 한 클래스에서 다른 클래스의 값을 다이렉트로 수정하는 것은 관심사 분리 원칙이었나...에 의해서 권장되지 않기에 별도로 만들어준다 (이러면 그런데 코틀린의 간결함을 잃는 것 아닌가? 싶기도 하다.) StaticValue.kt class StaticValue { companion object { var widthPixel: Int = 0 var heightPixel: Int = ..
-
개발일기
8월 한달 토이 프로젝트를 해보자! -08 : LogIn Data Binding & ViewModel
이제 ViewModel을 만들어, LiveData를 활용하여 Data Binding을 시켜줄 차례다. 시작이 반이라더니, 시작은 역시 그냥 시작인 것 같다. 여전히 한참 남았다. 처음부터 이 아키텍처로 시작했으면 당연히 좀더 빨랐겠지만, 그래도 이왕 만드는 거, 처음부터 차근차근 만들어보는 경험이 스스로에게도 리마인드 하기에 도움이 크게 된다 느껴졌다. app단 build.gradle에 아래와 같이 의존성을 추가해준다. build.gradle(:app) ... def lifecycle_version = "2.6.0-alpha01" def optional_lifecycle_version = "2.5.1" def arch_version = "2.1.0" dependencies { ... // ViewMode..