본문 바로가기

Android

[4일차]멀티어댑터 만들기 실습

리사이클러뷰 

 - scrapped에 안보이는 뷰를 넣어놓는다. 그럼 gc에서 참조하고 있으니 안없어진다. 


convertview에 버려지는 뷰를 재활용 



focusable이 true 인 button 이 있으면 아이템이 동작하지 않는다. 


그래서 true값을 false로 두고 해야된다. 


rating 바 같은 경우에는 true로 해야된다. 


Header 뷰 실습


리스트뷰 잘안쓴다...?

리사이클러 뷰를 쓴다. 


레이아웃을 하나 만든다. 헤어리스트아이템

textview 추가

edittext 추가 

검색버튼 추가 

layout가지고 뷰를 만드는건 layoutinflater


View headerView = getLayoutInflater().inflate

헤더뷰와 푸터뷰는 세팅하는 시점은 리스트뷰에 어댑터를  세팅되기 직전에 해야된다. 


실습


create MultiListActivity 

create xml

add edittext

add radiogroup

add radio 3개 

add button

add listview

메세지 쓰고 날짜랑 인서트하는 형식



create java SendData.class

add String message

add Drawable photo

add getter/setter


create ReceiveData.class

add String message

add Drawable photo;


create DateData

add String message

add getter/setter


create receive.xml

add imageview

add textvuew

update layout_margin 50dp



create send.xml


create date.xml

textview


create sendView extends FrameLayout



create ChattingAdapter


서로 관계없는 것들을 어댑터에 넣을때 비어있는 인터페이스를 만들어서 하나로 묶는다. 


플래폼 버그로서 getview에서 컨버트 뷰를 체크하는 if 문을 넣을때, || !(convertview instanceof SendView))을 추가해서 넣어줘야한다.


ContextCompat 물어봐야겠다 /



오늘 이거 해봐야겠다. 실습을 해보고 자야지 


 - 리스너 그림

 - contextCompat


'Android' 카테고리의 다른 글

[5일차]스피너Spinner  (0) 2016.07.15
[5일차]Expandablel list View  (0) 2016.07.15
[4일차]BaseAdapter 실습  (0) 2016.07.13
[4일차]ListView - AdapterView,MultipleAdapter  (0) 2016.07.13
[4일차]xml로 속성정의하기  (0) 2016.07.13