Room 사용하는 방법 총정리 2탄 다루는 내용은 Room 사용해서 데이터 넣기, 미리작성한 DB파일 넣기 정도 되겠다. 1탄보러가기 자 이제 데이터를 불러와 화면에 띄우자 내가 작성하는 프로젝트에서는 Fragment 내 리사이클러뷰에 DB 내용을 띄워야 했는데, 액티비티에서 데이터를 세팅하고 가져오려는 무자비한 일을 하려다가 끝끝내 실패하고(당연) Fragment에서 DB를 세팅한 뒤 Adapter를 통해 가져온 데이터를 리사이클러뷰에 뿌려주기로 한다(개비스콘ㄴ). 그래서 결론적으로 액티비티는 이 Fragment와 나중에 나올 Fragment2를 띄워주는 역할을 맡았다. Fragment2에도 데이터가 필요해서 액티비티에서 가져오려고 했던건데.............. 우선 잘 마무리한 다음에 시도해볼게요..
Room 사용하는 방법 총정리 1탄 다루는 내용은 Room 사용해서 데이터 넣기, 미리작성한 DB파일 넣기 정도 되겠다. 우선 테이블에 데이터 넣기 Room을 사용해 데이터를 굴릴 때 필요한 파일들은 테이블, Dao(interface), RoomDatabase(abstract), Repository, ViewModel 정도가 있다. 1. 테이블을 만들고 2. Dao에서 테이블의 데이터를 CRUD 3. RoomDatabase는 db의 최상위 레이어. 클래스 내 dao 객체를 만들고 실행합니다(구현) 4. Repository를 통해 쿼리를 관리하고 네트워크와 연결 5. ViewModel에서 데이터를 UI에 제공한다.. configuration이 바껴도 멀쩡하다. - Repository - ViewModel ..
레이아웃: 레이아웃은 포토샵에서 보던 레이아웃과 동일한 레이아웃이 맞다. 레이아웃 안에는 버튼, 텍스트뷰 같은 여러 요소가 배치될 수 있음 (뷰: 레이아웃이나 사용자에게 보이는 것 총칭) 레이아웃은 xml 파일에 생성됨. (소스코드가 아닌 리소스로 분류된다) 레이아웃 종류 – 레이아웃 중첩되면 처리 속도가 느려진다 Constraint Layout: 기본 레이아웃. 제약조건 설정으로 전체 화면 구성 >> 한 화면에 모든 것이 다 들어가 있습니다. Linear Layout: 위젯을 가로나 세로 한 줄로 배치함 >> 스크롤뷰 사용 Frame Layout: 위젯을 중첩해서 사용하기 위한 레이아웃… > 게임에서 배경과 플레이어가 서로 다르게 움직이는 경우 사용, 레이아웃 중 처리속도가 가장 빠르다. 속성 Layo..
RecyclerView는 어떤 데이터(xml)을 반복해서 넣고자 할 때 사용(컨테이너) 데이터를 어댑터를 통해서 리사이클러뷰에 넣음 -> 얘를 fragment나 activity 안에서 굴림 ViewPager는 framgent를 여러개 넣고 굴릴 때 사용 Fragment는 한 화면에 여러개를 배치할 수 있는 조각의 개념 -- 컨테이너: 위젯이나 다른 레이아웃에 데이터를 동적으로 표현할 때 사용… > 데이터를 반복적으로 표시하는 용도로 사용 (리사이클러뷰) BEFORE: ListView, GridView -> AFTER: RecyclerView RecyclerView(컨테이너) 레이아웃 매니저: 데이터를 화면에 그리드, 리니어 중 선택해 띄울 수 있게 함 어댑터: 표시될 데이터와 아이템 레이아웃을 리사이클러..
210728 수정 미리 만들어진 Database가 필요하다고 생각했는데 보고있던 코드랩에서는 내가 직접 데이터를 생성하는 경우만 다루고 있어서 또 서치.... 일단 안드로이드 공식에서는 한글로 미리채우기 라는 명칭을 사용하고 있었음 하라는 건지 말라는 건지.. 암튼 이 방법을 사용하게 될 경우 DB 관련 도구를 사용(거의 DB browser for SQLite 사용함)해 쿼리를 실행하고 db 파일을 asset에 넣어 적용하면 된다. 그리고 구글의 샘플을 찾던 중 더미 텍스트들을 사용한 코드를 발견... 이름도 PersistenceContentProvidersampel 이니까 맞지 않나.. .싶다가도 이렇게요..? 괜찮아요?? 많이놀랐죠? 냅다 고민에 빠져버린... 아무튼 이 녀석은 이후 이렇게 inser..
책으로 Sqlite 예제를 따라하던 도중... recyclerview에서 나타나는 값들의 합을 main activity에 띄우고 싶어졌고.. (테이블에 이름과 가격을 저장하고 adpater를 통해 띄웁니다) Adapter에서 Activity의 함수를 실행하고자 해서 방법을 정리한다. 1. 인터페이스 만들기 2. 액티비티에서 인터페이스 구현 3. 어댑터와 연결 대충 이렇게 되고 인터페이스 interface OnItemClick{ fun cal(value: String) } 간단하게 작성 Activity에서 class MainActivity: AppCompatActivity(), OnItemClick{ ... override fun onCreate(...){ ... val adapter = RecyclerA..