티스토리 뷰
<CoordinatorLaout>
<AppBarLayout>
<Toolbar>
<RelativeLayout>
<TextView/>
<TextView/>
<LinearLayout/>
<LienarLayout/>
</RelativeLayout>
</Toolbar>
</AppBarLayout>
</CoordinatorLayout>
이런식으로 레이아웃을 구성하여 글 작성화면을 만들고자 하는데, 아래와 같이 레이아웃이 오른쪽으로 밀리는 현상이 발생했다.
이것을 해결하고자, 여러차례 검색과 삽질을 해보았다.
원인은 아래에 나온 코드를 보면 알 수 있다. 툴바 내부에 RelativeLayout이 있는데 이것이 layout_width="match_parent"로 되어 있다. 그런데, 툴바에 백버튼(왼쪽 화살표)가 실행중에 동적으로 생성되는데 이 화살표가 추가되면서 레이아웃이 오른쪽으로 밀리게 되는 것이다. 나와 비슷한 문제를 해결했던 블로그가 있어서 링크를 걸어 놓겠다. 참고
핵심은 툴바 안에 레이아웃을 배치하고 싶을때는 항상 layout_gravity 속성으로만 배치를 해야 한다는것이다. Toolbar라는 것도 결국엔 뷰그룹일 뿐이다. 툴바내부의 텍스트 뷰 2개를 layout_gravity속성으로 정렬하고 리니어 레이아웃 2개는 밖으로 뺀다음에 아래와 같이 레이아웃을 재구성했더니 제대로 동작하는것을 확인할 수 있었다.
<CoordinatorLaout>
<RelativeLayout>
<AppBarLayout>
<Toolbar>
<TextView/>
<TextView/>
</Toolbar>
</AppBarLayout>
<LinearLayout/>
<LienarLayout/>
</RelativeLayout>
</CoordinatorLayout>
'컴퓨터 공학과 졸업 > 안드로이드 Trouble Shooting' 카테고리의 다른 글
카메라 권한 획득 (0) | 2018.07.23 |
---|---|
네비게이션 드로어 구현 삽질 (2) | 2018.07.08 |
CoordinatorLayout에 <include/>할때 주의사항 (0) | 2018.07.06 |
- Total
- Today
- Yesterday
- promise
- useRef
- hydrate
- Action
- return type
- await
- design system
- reducer
- server side rendering
- mobx
- Next.js
- atomic design
- rendering scope
- react
- computed
- storybook
- typescript
- Babel
- webpack
- es6
- state
- props
- javascript
- useEffect
- type alias
- reactdom
- async
- react hooks
- reflow
- Polyfill
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |