Top Banner
JAVA, Android 스스스 2015.06.09 스스스 1
33

Java, android 스터티7

Aug 07, 2015

Download

Documents

Heejun Kim
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Java, android 스터티7

1

JAVA, Android 스터디

2015.06.09김희준

Page 2: Java, android 스터티7

2

1. 뷰 (View)

- 컨트롤이나 위젯으로 불리는 UI 구성요소 - 여러 개의 뷰를 포함하고 있는 것은 뷰그룹 - 뷰가 뷰그룹을 상속가능 -> 뷰안에 뷰그룹이 존재 , UI 의 자연스러움

2. 레이아웃 (Layout)

- 뷰 그룹에서 자주사용하는 뷰의 배치방식 - 채우기 , 방향 , 정렬방향등 다양한 속성 - 리니어 , 상대 , 프레임 , 테이블 레이아웃 존재 - 훨씬 적은 XML 코드로 화면 구성 가능

참조 교재 : Do it! 안드로이드 프로그래밍0. 지난주 복습

Page 3: Java, android 스터티7

3

참조 프로젝트 : SampleLay-out다운로드 : easyspub.com

1. Match(fill)_parent

- 뷰의 높이 / 너비를 화면의 높이 / 너비에 맞춤 - android:layout_width="match_parent" - android:layout_height="match_parent "

2. wrap_content

- 뷰의 높이 / 너비를 텍스트 크기에 맞춤 - android:layout_width=“wrap_content" - android:layout_height=" wrap_content “

* 레이아웃 XML 파일에서 작성 가능

0. 지난주 복습

Page 4: Java, android 스터티7

4

참조 프로젝트 : SampleLay-out다운로드 : easyspub.com

android:layout_width=“wrap_contents"android:layout_height=" wrap_contents "

android:layout_width="match_parent"android:layout_height="match_parent "

android:layout_width="match_parent"android:layout_height="wrap_contents"

android:layout_width="wrap_contents"android:layout_height="match_parent "

0. 지난주 복습

Page 5: Java, android 스터티7

5

참조 프로젝트 : SampleLay-out다운로드 : easyspub.com

ㅇ 아이디로 뷰 찾기

findViewByID(r.id.( 뷰이름 ))

해당뷰를 찾아서 메소드에 추가토스트 메시지 출력

0. 지난주 복습

Page 6: Java, android 스터티7

6

1. 채우기 : fill model

- 뷰를 부모 뷰의 여유공간에 어떻게 채울지 설정

2. 방향 : orientation

- 뷰를 추가하는 방향을 설정

3. 정렬 방향 : gravity

- 뷰의 정렬 방향을 설정

4. 여유 공간 : padding

- 뷰의 여유공간을 설정

5. 공간 가중치 : weight - 뷰가 차지하는 가중치 값을 설정

참조 교재 : Do it! 안드로이드 프로그래밍0. 지난주 복습

Page 7: Java, android 스터티7

7

참조 프로젝트 : SampleLinearLayout다운로드 : easyspub.com

ㅇ 방향 설정

Orientation 으로 방향설정

0. 지난주 복습

Page 8: Java, android 스터티7

8

Orientation 으로 방향설정 horizontal 은 옆으로

ㅇ 방향 설정 1

참조 프로젝트 : SampleLinearLayout다운로드 : easyspub.com0. 지난주 복습

Page 9: Java, android 스터티7

9

참조 프로젝트 : SampleLinearLayout다운로드 : easyspub.com

ㅇ 방향 설정 2

0. 지난주 복습

Page 10: Java, android 스터티7

10

ㅇ 여유공간 설정

참조 프로젝트 : SampleLinearLayout다운로드 : easyspub.com

24dp 만큼의 간격

* dp 란 ? - density independent pixel, 밀도 독립적 픽셀이라고 불리며 160dip 화면을 기준으로 한 픽셀 (1 인치에 160 개의 점이 있을시 1dp = 1px) 기기마다 화면의 크기가 다르므로 dp 를 이용해 위치를 정하면 유연성이 생김

0. 지난주 복습

Page 11: Java, android 스터티7

11

ㅇ 가중치 설정

참조 프로젝트 : SampleLinearLayout다운로드 : easyspub.com

왼쪽 아래가 가중치 2 인 뷰 .

* 가중치 : 레이아웃의 화면을가로 / 세로 기준으로 가중치를 두며 뷰들의 크기와 위치는 ( 뷰의 가중치 / 가중치의 총합 ) 과설정된 방향으로 정해진다 .

0. 지난주 복습

Page 12: Java, android 스터티7

12

1. 상대 / 프레임 / 테이블 레이아웃

2. 레이아웃에서의 화면전환

3. 스크롤뷰

Page 13: Java, android 스터티7

13

1. 상대 (Relative) 레이아웃참조 프로젝트 : SampleRelativeLayout다운로드 : easyspub.com

실행화면

② ④

Page 14: Java, android 스터티7

14

1. 상대 (Relative) 레이아웃참조 프로젝트 : SampleRelativeLayout다운로드 : easyspub.com

Activity_main.xml 에서 버튼 3 개 생성 ( 리니어 레이아웃 )

Page 15: Java, android 스터티7

15

1. 상대 (Relative) 레이아웃참조 프로젝트 : SampleRelativeLayout다운로드 : easyspub.com

MainActivity.java 에서 버튼클릭 메소드 부분

버튼 클릭시 normal 레이아웃으로 화면 전환

Page 16: Java, android 스터티7

16

1. 상대 (Relative) 레이아웃참조 프로젝트 : SampleRelativeLayout다운로드 : easyspub.com

Nomal.xml 소스레이아웃의 배경화면 설정

Page 17: Java, android 스터티7

17

1. 상대 (Relative) 레이아웃참조 프로젝트 : SampleRelativeLayout다운로드 : easyspub.com

Nomal.xml 소스새로운 텍스트뷰 1 개 생성

Layout_alignparentTop설정으로 텍스트뷰가 상단에 위치하게 됨

Layout_marginTop 설정으로 20dp 떨어진 상단에텍스트뷰 생성

Page 18: Java, android 스터티7

18

1. 상대 (Relative) 레이아웃참조 프로젝트 : SampleRelativeLayout다운로드 : easyspub.com

Nomal.xml 소스새로운 텍스트뷰 2 개 생성 / 속성 설정

( 아이디와 비밀번호 )

EditText 설정을 함으로해당 텍스트뷰에서타이핑이 가능해짐

⑤centerInParent 설정을함으로써 해당 레이아웃이 정중앙에 위치

Page 19: Java, android 스터티7

19

1. 상대 (Relative) 레이아웃참조 프로젝트 : SampleRelativeLayout다운로드 : easyspub.com

하단부에 체크 / 엑스 버튼을 배경으로한 버튼 생성

체크버튼을 위한 상대레이아웃설정(alignParentLeft)

엑스버튼을 위한 상대레이아웃설정(alignParentRight)

Page 20: Java, android 스터티7

20

2. 테이블 (Table) 레이아웃 참조 프로젝트 : SampleLayout다운로드 : easyspub.com

실행화면

Page 21: Java, android 스터티7

21

2. 테이블 (Table) 레이아웃 참조 프로젝트 : SampleLayout다운로드 : easyspub.com

테이블 레이아웃에선TableRow 태그를 이용열을 추가

하나의 열에 여러가지뷰가 들어갈 수 있음

이름과 나이를 보여주는 텍스트 뷰를 생성

Table_layout.xml 소스2 개의 텍스트뷰를 추가하는 부분

Page 22: Java, android 스터티7

22

2. 테이블 (Table) 레이아웃

stretchColumns 를 이용해서 테이블 레이아웃의 남는 칸을채워 넣을 수 있다 .

참조 프로젝트 : SampleScrollView다운로드 : easyspub.com

Table_layout.xml 소스

Page 23: Java, android 스터티7

23

3. 스크롤 뷰 참조 프로젝트 : SampleScrollView다운로드 : easyspub.com

실행화면

Page 24: Java, android 스터티7

24

3. 스크롤 뷰 참조 프로젝트 : SampleLayout다운로드 : easyspub.com

HorizontalScrollView 는수평 스크롤을 위한 뷰그 안에 있는 Scrollview 는수직 스크롤을 위한 뷰

수평 스크롤 뷰 안에이미지 뷰가 생성 되이미지가 화면보다클 경우 스크롤이가능해짐

Activity_main.xml 소스스크롤바 생성 / 설정을 위한 부분

Page 25: Java, android 스터티7

25

3. 스크롤 뷰 참조 프로젝트 : SampleScrollView다운로드 : easyspub.com

스크롤 / 이미지 뷰를 위한 객체와이미지를 보여주기 위한 객체 선언스크롤 / 이미지 뷰 이름은 XML 과 동일

MainActivity 소스findViewById 를 이용해 각각의 객체를 참조

Page 26: Java, android 스터티7

26

3. 스크롤 뷰 참조 프로젝트 : SampleScrollView다운로드 : easyspub.com

수평 스크롤바 사용 설정

Drawble 폴더에 가서 해당 이미지 리소스를 읽음

이미지 리소스와 크키 설정

MainActivity 소스스크롤바 설정과 이미지 리소스 부분

Page 27: Java, android 스터티7

27

4. 프레임 (Frame) 레이아웃참조 프로젝트 : SampleFrameLayout다운로드 : easyspub.com

Page 28: Java, android 스터티7

28

4. 프레임 (Frame) 레이아웃참조 프로젝트 : SampleFrameLayout다운로드 : easyspub.com

프레임 레이아웃 내에 이미지 뷰를 2 개 생성실제로 보이는 것은 1 개의뷰이고 이는 visibility 를통해 설정 가능

Page 29: Java, android 스터티7

29

4. 프레임 (Frame) 레이아웃참조 프로젝트 : SampleFrameLayout다운로드 : easyspub.com

imageIndex 와 setvisivility 를 이용해서두 개의 이미지를 번갈아 보여줌

Page 30: Java, android 스터티7

30

5. 기본 위젯 참조 교재 : Do it! 안드로이드 앱 프로그래밍

1. 텍스트 뷰 (TextView)

- 화면을 구성할 때 가장 많이 사용 - 주요 속성 : text, textColor, textSize, textSyle, typeface( 기본문자 표시 ), singleLine( 한줄 표시 )

2. 버튼 (Button)

- 위젯에서 발생하는 이벤트 처리에 유용 - 체크박스 , 라디오 버튼도 버튼의 속성을 가짐 - ImageButton 태그로 버튼에 이미지 추가 가능 - 관련 메소드 : public boolean isChecked() public void setChecked(boolean checked) public void toggle() 등

Page 31: Java, android 스터티7

31

5. 기본 위젯 참조 교재 : Do it! 안드로이드 앱 프로그래밍

3. 에디트텍스트 - 사용자의 입력을 받기에 용이 , 복 / 붙 등 기본기능 지원 - 포커스가 설정되면 키패드가 화면에 나타남 - hint 속성을 이용하면 안내글이 출력됨

4. 이미지뷰 - 이미지를 화면에 보여주기에 유용 - 주요 속성 : src( 이미지 설정 ), maxWidTh/Height( 최대크기설정 ) - tint( 반투명 색상 적용 ), scaleType( 확대 / 축소 비율 )

Page 32: Java, android 스터티7

32

Q & A

Page 33: Java, android 스터티7

33

Thank you!!