일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Bean Factory란
- Spring Handler
- ElasticSearch 동의어 파일
- 토큰필터
- ElasticSearch Shingle
- 계산기
- ApplicationContext란
- ElasticSearch 동의어 사전
- layout
- 동의어 파일
- Spring Container란
- H2 DB
- 자바
- Java
- 인텔리제이
- Servlet Container란
- 안드로이드
- Spring Servlet이란
- spring 장점
- H2
- ElasticSearch EdgeNGram
- Servlet 멀티 스레딩
- ElasticSearch 토큰필터
- elasticSearch
- Dispathcher Servlet이란
- ContextLoaderListener란
- ElasticSearch NGram
- Servlet Life Cycle
- 안드로이드스튜디오
- Servlet과 Thread
- Today
- Total
결국 무엇이든 해내는 사람
간단한 화면 레이아웃 다루기 본문
이렇게 만들고자한다.
자그러면
리니어 레이아웃만 사용한다는 조건을 가질 때
크게 3부분으로 나눈다.
즉 , 큰 레이아웃(최상단 리니어레이아웃) 안에
리니어레이아웃을 3개 넣어준다는 얘기
그러면 수직으로 쌓이니까 최상단 레이아웃은 vertical로 설정을 해준다.
그리고 맨 첫줄을 리니어 레이아웃하나를 만들어주어 그안에 텍스트 뷰를 삽입
이 때 첫번째 줄 리니어레이아웃은 horizontal로 설정하여 수평방향으로 진행되게끔 한다.
이러면 첫줄 끝
이제 두번째 줄 시작
똑같은 방식으로 진행하면 된다.
근데 얘는 D 와 E를 또 레이아웃으로 묶어준다
그니까 크게 3부분으로 나눈 레이아웃중 2번째 레이아웃안에서 텍스트뷰를 하나 넣어 C 를 넣어주고 그다음에
리니어레이아웃을 만들어 vertical로 설정해준후 D와 E를 넣어준다.
그다음 그 리니어 레이아웃을 빠져나온뒤 텍스트뷰를 넣어서 투명박스D를 삽입
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal">
<!-- 밑에 C 부분의 높이를 50dp로 지정해주지말고 match_parent로 해주어야지, 화면 밖으로 안날아감-->
<TextView
android:layout_width="50dp"
android:layout_height="match_parent"
android:background="#d0ff0000"
android:gravity="center"
android:text="C" />
<LinearLayout
android:layout_width="100dp"
android:layout_height="50dp"
android:orientation="vertical">
<TextView
android:layout_width="100dp"
android:layout_height="25dp"
android:background="#d00000ff"
android:gravity="center"
android:text="D" />
<TextView
android:layout_width="100dp"
android:layout_height="25dp"
android:background="#BCFB00FF"
android:gravity="right"
android:text="E"
android:paddingRight="20dp"
android:paddingTop="2dp"
/>
</LinearLayout>
<TextView
android:gravity="bottom|center"
android:layout_width="100dp"
android:layout_height="50dp"
android:text="D"/>
</LinearLayout>
막줄이 제일 오래걸렸다.
어떻게하면 해결할 수 있을지 고민해보았는데 해답은 height 값이었다.
처음에는 3번째 리니어 안에 또다른 리니어를 2개를 겹치게 둔다.
하나는 horizontal 정렬 그안에 리니어는 바로 vertical정렬 그래서
vertical 의 layout_gravity를 center로 주면
그다음 textView의 layout_gravity를 center로주면 , 텍스트뷰의 부모레이아웃은 vertical이므로 센터가되면 가운데 정렬이 된댜
---------------------------------------------------------------------------------------------------------------------------
참고로 , 가운데 정렬을 시도하려고하는데 처음에는 도무지 답이안나왔다 . 처음에는 수평 수직 레이아웃 둘다 높이를 match_parent를 줬거든
근데 두번째 리니어의 height 부분을 match_parent대신 wrap_content를 해주었더니
쨘
'두서없는 공부 노트 > Android' 카테고리의 다른 글
@+id/ id작성 (0) | 2020.09.10 |
---|---|
Relative layout , 가운데 정렬 (0) | 2020.09.10 |
wrap_content , match_parent (0) | 2020.09.10 |
margin과 padding (0) | 2020.09.10 |
gravity와 layout_gravity (0) | 2020.09.10 |