본문 바로가기

Android ᙏ̤̫͚/Android Programming

[Android] chapter 2 - 1 스크롤뷰 사용하기

 

 

 

boostcourse 안드로이드 앱 프로그래밍

2. 이벤트와 리스트뷰

- 1. 스크롤뷰 사용하기

(1) 테이블 레이아웃

 

 

 

테이블 레이아웃 (Table Layout)

: 격자 모양으로 뷰를 배치하는 방법

- 테이블 레이아웃 안에 TableRow 추가하여 뷰, 줄 추가 가능

 


 

- 실습 코드

    - 최상위 레이아웃을 TableLayout으로 변경

    - 필수 속성만 두고, layout 관련 코드, tools 코드 등 불필요한 코드 제거

 

    - TableLayout 내 코드에 <TableRow> 추가하여 width와 height 부여

 

    - TableRow 내에 버튼 3개 추가

 

    - TableRow 하나 더 추가하여 동일하게 버튼 3개 추가

 

    - 오른쪽에 남는 여유 공간을 나누어 갖기 위해 코드에 내용 추가

        - android:stretchColumns="0, 1, 2"

            - 3개의 버튼이 남아 있는 공간 함께 나누어 가질 수 있음 (인덱스 의미)

 

    - 새로운 작업 위해 res/layout 폴더 내에 새로운 파일 추가

    - 파일 생성 시 최상위 레이아웃 지정 가능하므로 TableLayout으로 지정

    - 코드로만 TableLayout, TableRow와 TextView, EditText 추가하는 것 연습

 

<activity_menu.xml 코드>

android:layout_span="2" : 해당 뷰는 컬럼 3칸을 차지하는 것 의미

 

 

 

 


 

 

 

boostcourse 안드로이드 앱 프로그래밍

2. 이벤트와 리스트뷰

- 1. 스크롤뷰 사용하기

(2) 스크롤뷰

 

 

 

 

스크롤뷰 (ScrollView)

: 글자나 이미지 들어간 뷰가 화면 영역을 넘어가는 경우 스크롤 기능을 쉽게 만들 수 있도록 해줌

- 뷰를 스크롤뷰로 감싸주면 스크롤뷰가 뷰의 영역을 계산해줌

- 화면에 보이는 공간을 넘어가면 자동으로 스크롤 생성됨

 


 

- 실습 코드 <Scroll View>

    - Constraint Layout에 버튼 추가 후 ScrollView를 추가하면 표현하지 못하기 때문에 최상위 레이아웃 변경

    - <LinearLayout> + orientation="vertical" + 제약조건들 제거

 

 

    - ScrollView -> LinearLayout -> TextView 추가

    - Scroll 생기도록 text 속성 이용하여 계속 입력 + textSize 속성 활용하여 글씨 크기 확대

 

화면에서는 보이지 않지만 실행해보면 스크롤 발생됨

 

 

<MyScrollView 프로젝트 activity_main.xml 코드>