전체 글 썸네일형 리스트형 Constraint Layout(2) 체인 체인 CHAINS뷰 A와 B가 있다고 할 때, A와 B가 "서로" 연결되어 있을 경우 이것을 체인 관계 상태라고 한다 여러 개의 뷰를 연결할 수도 있으며, 체인상태의 뷰는 하나의 헤드(HEAD)를 가지게 되는데Vertical방향으로 연결할 경우 연결된 뷰의 최상단에 위치한 뷰, Horizontal 방향으로 연결할 경우 가장 왼쪽에 있는 뷰가 헤드가 된다 12345678910111213141516171819202122232425262728 cs 코드를 보면 button8 button9 button10 이 서로 layout_constraintXx_toYyOf 로 상호 연결되어 있으며, 따라서 button8,9,10은 체인 상태이다1app:layout_constraintVertical_chainStyle=".. 더보기 Constraint Layout(1) 맛보기 RelativeLayout에 비하여 2배 가까이 성능차이 및, 뷰 애니메이션에 관련하여 장점이 있다고 판단되어 사용해보기로 하였다. 한번 써보고 싶은 생각이 있다면 참조할 페이지 2개 상세한 설명을 보고싶다면? 구글 트레이닝 : https://developer.android.com/training/constraint-layout/index.html 따라하면서 배우는게 편하면?구글 예제 : https://github.com/googlesamples/android-ConstraintLayoutExamples 개인적인 요약정리는 구글 예제를 열어보았다는 전제하에 진행 상대적인 위치 설정123456789app:layout_constraintTop_toBottomOf="@+id/button32"app:layout.. 더보기 ImageView에서 이미지 크기가 레이아웃보다 커지면 레이아웃이 모양이 깨질 때, 아주 기본적인 것이지만, 종종 까먹는데android:adjustViewBounds 속성을 true로 준다 더보기 감동 감동에는 사람을 움직이는 힘이 있다감동 받고 감동 주는 삶을 살자 더보기 안드로이드 ViewStub, ViewStubProxy 사용법 ViewStub보이지 않게 시작되어 보이거나, 명시적으로 뷰를 확장 시킬 때 다른 레이아웃을 확장, 레이아웃을 대체한다다른 레이아웃을 확장 시킬때에는 새 레이아웃에 대한 바인딩이 설정되어야 한다 VIew Inflation 전에는, ViewStub에 접근할 수 있지만, inflation 이후에는 View는 최종 결과이기 때문에 View의 계층구조에서 사라진다그리고 그 자리를 ViewStubProxy가 대신해서 존재하게 되고,ViewStub에 대한 접근 권한을 부여한다 ViewStubProxy가 ViewStub의 ViewStub.OnInflateListener 를 받아 Binding처리를 해야한다 ViewStub 형태 ViewStub stub = (ViewStub) findViewById(R.id.stub).. 더보기 DataBinding (3) 데이터 객체 extends BaseObservable을 상속받아 private static class User extends BaseObservable { private String firstName; private String lastName; @Bindable public String getFirstName() { return this.firstName; } @Bindable public String getLastName() { return this.lastName; } public void setFirstName(String firstName) { this.firstName = firstName; notifyPropertyChanged(BR.firstName); } public void setLas.. 더보기 DataBinding (2) 이전에 java코드에서 View.visible, gone해주던 처리를 이제는 Data부에 이렇게 import해주고 위와 같이 처리할 수도 있다 클래스 이름이 충돌한다면 별칭을 지어줄 수도 있다 List를 데이터부에 가져오려면 위와 같이 입력한다 뷰와 관련된 함수 처리도 가능하다 … name, contact에 user 변수가 있다면 아래와 같이 전달 할 수도 있다 식 언어공통적인 특징Java 식과 똑같은 부분 수학 + - / * %문자열 연결 +논리 && ||이항 & | ^단항 + - ! ~시프트 >> >>> = 더보기 DataBindng (1) https://developer.android.com/topic/libraries/data-binding/index.html?hl=ko 1. app.gradle 에 android { .... dataBinding { enabled = true } } 를 추가한다 2. 아래와 같은 형태의 xml 레이아웃을 가진다.먼저 layout으로 감싼 이후, data에 있는 변수를 내부에서 처리할 수 있다.레이아웃 안에서 수식은 @{} 으로 처리 된다 3. @{user.firstName} 으로 매칭시, class user의 firstName, 또는 getFirstName()으로 매칭된다 4. 데이터 바인딩은 레이아웃 파일의 이름을 기준으로 main_activity.xml --> MainActivityBinding으로 .. 더보기 이전 1 ··· 5 6 7 8 9 10 11 다음