Notice
Recent Posts
Recent Comments
Link
«   2025/08   »
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
Tags
more
Archives
Today
Total
관리 메뉴

백엔드 개발 공부 일지

Android - Layout 본문

Android

Android - Layout

JungCat 2023. 1. 15. 00:48

● Layout

 

안드로이드에서는 여러가지 레이아웃을 제공하는데 사용되는 가장 대표적인 5가지 레이아웃은 다음과 같다.

 

레이아웃 이름 설명
제약 레이아웃
(Constraint Layout)
제약조건 기반 모델
연결선을 제약 조건으로 하여 화면을 구성하는 방법
안드로이드 스튜디오에서 자동으로 설정하는 디폴트 레이아웃
리니어 레이아웃
(Linear Layout)
박스(Box) 모델
한 쪽 방향으로 차례대로 뷰를 추가하여 화면을 구성하는 방법
뷰가 차지할 수 있는 사각형 영역을 할당
상대 레이아웃
(Relative Layout)
규칙(Rule) 기반 모델
부모 컨테이너나 다른 뷰와의 상대적 위치로 화면을 구성하는 방법
제약 레이아웃을 사용하게 되면서 상대 레이아웃은 권장하지 않음
프레임 레이아웃
(Frame Layout)
싱글(Single) 모델
가장 상위에 있는 하나의 뷰 또는 뷰 그룹만 보여주는 방법
여러 개의 뷰가 들어가면 중첩하여 쌓게 됨.
가장 단순하지만 여러 개의 뷰를 중첩한 후 각 뷰를 전환하여 보여주는 방식으로 자주 사용함
테이블 레이아웃
(Table Layout)
격자(Grid) 모델
격자 모양의 배열을 사용하여 화면을 구성하는 방법
HTML에서 많이 사용하는 정렬방식과 유사하지만 많이 사용하지는 않음

● Linear Layout

위의 설명한 레이아웃 중에서 가장 사용하기 쉬운 레이아웃이다. LinearLayout을 잘 이해하면 다른 레이아웃을 이해하는데 많은 도움이 되니 잘 숙지하는것이 좋다고 한다.

Linear Layout 변경 방법

 

package com.example.samplelinearlayout;

import android.os.Bundle;
import android.widget.Button;
import android.widget.LinearLayout;

import androidx.appcompat.app.AppCompatActivity;

public class LayoutCodeActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        // new 연산자로 리니어 레이아웃을 만들고 방향 설정
        LinearLayout mainLayout = new LinearLayout(this);
        mainLayout.setOrientation(LinearLayout.VERTICAL);
        
        // new 연산자로 레이아웃 안에 추가될 뷰들에 설정할 파라미터 생성
        LinearLayout.LayoutParams params =
                new LinearLayout.LayoutParams(
                        LinearLayout.LayoutParams.MATCH_PARENT, // width
                        LinearLayout.LayoutParams.WRAP_CONTENT  // height
                );
        // 버튼에 파라미터 설정하고 레이아웃에 추가
        Button button1 = new Button(this);
        button1.setText("Button1");
        button1.setLayoutParams(params);
        mainLayout.addView(button1);
        
        // 새로 만든 레이아웃을 화면에 설정
        setContentView(mainLayout);
    }
}

 

'Android' 카테고리의 다른 글

Android - View  (0) 2023.01.12
Comments