- NEW초롱이의 하루
- kisa
- 길은 가면, 뒤에 있다
- C언어 예술가
- Zer0 day - Zer0 day
- Information Security
- Secure-EDU
- 앙큼한유채's 일상 Story
- Library of Ezbeat (잠정 폐쇄)
- The Factory
- 안드
- 모후모후의 커뮤니티
- 공학도의 잡다한 시선
- 안드2
- IT속에 코코아
- IP주소검색(whois)
- IP주소검색(좌표포함)
- 소프트웨어 경력 관리
- 해저 케이블 지도
- MAC주소검색
- IANA
- 포트번호검색
- 자신의IP확인
- 웹페이퍼캡처
- 나의패스워드보안등급
- 웹 취약점 분석
- IT용어정리
- GitHub
- 라이브러리 모음
- 웹마당넷
- 시스템콜참고
- BCD 변환
- 보안뉴스
- 코딩도장(C, Python)
- 백준알고리즘
- 코딩테스트 연습
- 웹 사이트 테스트
- 스크립트꾸미기
- ctf대회목록
- 전자신문
- hash 크랙
- CVE
- 도메인등록
- N클라우드
- BugBountyList
- 칼리공식사이트
- CR4FTING BOX
- 아스키코드 변환
- 웹 사이트 통계 및 평가
- PDF변환
- AWS 및 클라우드 정보
- 가상화 및 서버관련
- 티오리
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 리눅스
- System
- 프로젝트
- LEVIATHAN
- Java
- 안드로이드
- 쉘 스크립트
- 쉘 스크립트 기초
- ACL
- Linux
- GPIO
- nginx
- API
- 그라파나
- Python
- 라즈베리파이
- Android
- GUI
- 쉘 스크립트 if문
- 메소드
- docker
- Shell script
- centos docker
- synology
- 클라우드
- RaspberryPi
- 자바
- JSP
- Tkinter
- 네트워크
- Today
- Total
IT창고
안드로이드(Android) 레이아웃 설정 본문
안드로이드 스튜디오를 사용하여 어플을 만드는데 XML을 사용해서 어플화면을 구성해야 합니다.
화면 구성에 사용되는 레이아웃을 알아보는데 Liner, Relative Layout에 대해 알아보겠습니다.
처음 안드로이드 스튜디오를 실행하면 아래와 같은 화면이 나옵니다. 일반적인 뷰들은 레이아웃 뷰의 자식으로 들어가는데 먼저 리니어 레이아웃에 대해 알아보겠습니다.
LinearLayout은 뷰들을 수평 혹은 수직으로 나열할때 사용하는 레이아웃입니다.
레이아웃은 레이아웃안에 또 레이아웃을 만들수가있습니다.
<LinearLayout xmlns:android="http://....."
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
</LinearLayout>
</LinearLayout>
레이아웃을 설정했다면 레이아웃의 크기를 줄수있습니다 크기는 레이아웃 뿐 아니라 다른 뷰에도 줄수있습니다. 크기는
width, height, gravity, layout_gravity, layout_width, layout_height 로 크기와 장소를 지정하고 textColor나 background로 색깔을 지정할수있습니다 색깔은 "#ffffff"로 16진수를 사용하고 ff0000은 빨강 00ff00은 녹색 0000ff 는 파랑으로 3개의 색깔을 조합해서 색상을 나타낼수있습니다.
ex)로 LinearLayout에서 사용한 덱스트 뷰입니다.
<TextView
android:textSize="25sp"
android:width="100dp"
android:height="100dp"
android:background="#ffff00"
android:textColor="#000000"
android:gravity="center"
android:layout_gravity="left"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="50dp"
android:text="E"/>
리니어 레이아웃에서 가장 중요한 것은 부모가 리니어 레이아웃일때 weight옵션을 사용할수있는 것입니다. weight는 화면이 크기가 늘어나거나 좌우로 변하면 같이 크기가 늘어나는 옵션입니다.
이번에는 RelativeLaylut에 대해 알아보겠습니다.
릴레이티브 레이아웃은 부모 혹은 다른 뷰들을 기준으로 정렬을 할수있는 레이아웃이고 가장 많이 사용되는 레이아웃입니다. 리니어레이아웃처럼 레이아웃안에 리니어레이아웃을 넣어 사용할수 있습니다.
릴레이티브 레이아웃 주요 디자인소스는 아래와 같습니다.
android:layout_above="@+id/Tv" 위쪽
android:layout_below="@+id/Tv" 아래쪽
android:layout_toLeftOf="@+id/Tv" 왼쪽
android:layout_toRightOf="@+id/Tv" 오른쪽
android:layout_alignTop="@+id/Tv" 윗선정렬
외에도 많은 기능이 있습니다.
ex)
android:layout_centerVertical="true"
android:layout_marginRight="5dp"
android:layout_alignParentRight="true"
android:paddingRight=""
ex) RelativeLayout에서 사용한 텍스트 뷰입니다.
<TextView
android:id="@+id/cetth"
android:textSize="35sp"
android:layout_width="match_parent"
android:layout_height="50dp"
android:gravity="center"
android:textColor="#ffffff"
android:background="#00ff00"
android:text="H"
android:layout_alignParentBottom="true"
android:layout_toLeftOf="@+id/cettg" />
<TextView
android:id="@+id/cettd"
android:textSize="35sp"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_toRightOf="@+id/cetTv"
android:layout_below="@+id/cetTv"
android:gravity="center"
android:background="#ff0000"
android:text="D"
/>
Linear와 Relative 뿐 아니라 Frame, Scroll 레이아웃들도 있습니다. 자신이 만들 어플에 맞는 레이아웃을 사용하면 됩니다.
ex) 스크롤 뷰 사용법
<ScrollView
android:layout_width="match_parent"
android:scrollbars="none"
android:layout_height="match_parent"
android:fadingEdgeLength="10dp">
여기안에 뷰들을 넣습니다.
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"/>
<Linear ....
</ScrollView>
레이아웃안에는 버튼이나 텍스트뷰 같은 특화된 뷰들이 있는데 이런 뷰들의 옵션이 있습니다 주로 텍스트뷰에서 사용하는 옵션으로는 text , textSize, id, textColor 등이 있습니다.
------추가------
프로그래스바 ex)
<ProgressBar
android:layout_height="10dp"
android:layout_width="200dp"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:progress="20"
android:max="100"
style="?android:attr/progressBarStyleHorizontal"
android:id="@+id/progressBar"/>
'프로그래밍 > Android' 카테고리의 다른 글
안드로이드 스튜디오 apk 만들기(key생성) (0) | 2017.12.12 |
---|---|
안드로이드 앱 개인정보처리방침 (0) | 2017.12.12 |
안드로이드(Android) API 정리3 (0) | 2017.11.14 |
안드로이드(Android) API 정리2 (0) | 2017.11.04 |
안드로이드(Android) API 정리1 (0) | 2017.10.28 |