목록분류 전체보기 (269)
와챠의 우당탕탕 개발 기록장

목차 Data binding 적용하기 Data binding 적용 시 image의 src에 이미지 넣는 법 string formatting strings.xml의 string formatting string formatting + 커스텀 BindingAdapter 사용하기 Packaging 1. Data binding 적용하기! Data binding(공식문서) 1. gradle에 data binding enabled를 true로 설정하는 코드 추가 android { ... dataBinding { enabled = true } } 2. 기존 layout에서 Convert to data binding layout 클릭하여 루트 태그를 으로 변경하기 3. 데이터 추가하기 그러면 View에서 이렇게 사용 가..

목차 시작하기 전에 UI Layer란? ViewModel의 데이터 관리 방법 Data Layer란? UI Layer 구현법 Data Layer 구현법 ViewModelFactory 정리 1. 시작하기 전에: 아키텍처: 변경하는데 드는 비용과 관련. (공식문서) 그러면 어케 앱 설계하라는 거야!? ==> 관심사 분리를 위해 레이어 2개로 나누기 UI Layer: 화면에 애플리케이션 데이터를 표시 Data Layer: 앱의 비즈니스 로직을 포함하고 애플리케이션 데이터를 노출 2. UI Layer란? UI Layer: 화면에 애플리케이션 데이터를 표시함 + 데이터가 변할 때마다 변경사항을 반영. UI 레이어는 다음 두 가지로 구성됨 UI elements: 화면에 데이터를 렌더링함 State holders: 데..

목차 JSON이란? 홈화면 UI에 필요한 데이터 구조 설계하기 JSON Data 객체로 변환하기 Gson 라이브러리 사용해서 JSON Data 파싱하기 Glide 사용해서 이미지 url 넣기 Viewpager2 + TabLayout사용하기 TabLauout을 indicator로 사용하기 옆에 item도 살짝 보이게 구현하기 1. JSON이란? https://developer.mozilla.org/ko/docs/Learn/JavaScript/Objects/JSON JavaScript Object Notation (JSON)은 Javascript 객체 문법. 네트워크 통신에서 데이터 주고받는 포맷으로 많이 사용됨. key:value로 표현(String, boolean, int, array등) 이런 json ..

목차 BottomNavigation에서 선택 상태에 따라 아이콘 변경하기 BottomNavigation 선택 시 화면 전환 namespace 1. BottomNavigation에서 선택 상태에 따라 아이콘 변경하기 1. selecter_home_icon.xml 만들어서 선택 시 이미지, 선택 아닐 시 이미지 설정 2. res>menu>navigation_main.xml < 이 파일에다가 위에서 만든 selecter 파일을 설정 3. activity_main.xml의 BottomNavigation의 menu에 2번에서 만든 파일 추가 2. BottomNavigation 선택 시 화면 전환 (공식문서) BottimNavigatiom 적용하기 1. 라이브러리 추가 // Navigation implementat..

목차 Manifest에 대해서 allowBackup icon / label / roundIcon mipmap supportsRtl exported intenr-filter Splash api 30 이하 버전의 Splash api 31 이상 버전의 Splash Fragment Manager 액티비티 내에 프레그먼트를 추가할 수 있는 영역 만들기 프레그먼트 호출법 Activity 생명주기 Fragment 생명주기 기타 배운 것들 1. Manifest에 대해서 Manifest 내용 태그 안 1-1. allowBackup 사용자 데이터를 구글 드라이브에 25메가바이트까지 자동으로 백업/복원 여부 android:allowBackup="true" 1-2. icon / label / roundIcon 기본 아이콘 /..

목차 머티리얼 디자인 Ratio(ConstraintLayout 제약사항) BaseLine(ConstraintLayout 제약사항) theme의 Primary/Secondary color textStyle 확장 toolbar-scroll 애니메이션 구현 svg(vecter assets) 추가 방법 툴바 뒤로가기 버튼 이미지 추가+ 동작하기 WebP란? 기타 배운 것들,,, 1. 머티리얼 디자인 https://material.io 머티리얼 디자인이라고 컴포넌트를 잘 사용하는 방법, 주의사항 등을 가르려주는 곳이다. 컴포넌트 사용법의 사전같은 곳,,, 구경할 게 많아보인다. 2. Ratio width에 맞춰 1:1 크기로 맞추기 (더 많은 ConstraintLauout 제약 보기) app:layout_cons..

목차 Object Object 무명 객체 class / interface생성 시의 Object companion object const inner class Extension functions Extensions properties lambda trailing lambda Scope function let with run apply also enum class sealed 1. Object object: 싱글톤 패턴 언제 사용?: 언제나 같은 결과 반환을 기대할 때 주의해야할 점: 싱글톤 객체가 어느 위치에서 값을 수정했는지 파악 어려움 // 장바구니 object CartItems { // private 제품 리스트, mutableKist: 수정, 추가 가능 private val mutableProduc..

목차 """ """: Triple-quoted Array 종류 complier / complie time / run time !!: not-null assertion operator Type Check loop-break data class Module visiblilty modifier(가시성 변경자): package, class member Collections(List, Set, Map) 데이터 가져오기 조건으로 값 반환하기 Map joinToString Filtering Partition Grouping 1. Triple-quoted Triple-quoted를 사용하면 \n이나 \$를 하지 않아도 줄바꾸기, 특수문자 인식 가능 val text = """ 그냥 이렇게 아무무렇게나 쓰면 됨 """.t..