본문 바로가기
코딩일기/android studio

안드로이드 독학 4일차 : 자바 소스로 인터페이스 작성하기

by 욱파이어니어 2021. 3. 8.
728x90
반응형

이 부분에서는 깊게 들어가지는 않고 그냥 자바 소스로도 인터페이스를 작성하고 추가할 수 있다는 것을 보여주는 부분이다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    LinearLayout container;  //레이아웃 변수 선언
    LinearLayout.LayoutParams params; //레이아웃의 크기를 지정할 크기변수 선언
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        container = (LinearLayout)findViewById(R.id.container); //container라는 id를 가진 레이아웃을 가져와서 container 변수어 집어 넣음
        params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT); 
        //param에다가 뷰의 크기를 집어 넣음 width는 match_parent height는 wrap_content
        LinearLayout add = new LinearLayout(this); //add라는 새로운 LinearLayout 변수를만듬
        add.setLayoutParams(params); //add의 크기를 위의 param으로 맞춤
        add.setOrientation(LinearLayout.VERTICAL); //orientation도 Vertical로 맞춤
 
        Button b1 = new Button(this); //버튼 뷰 변수 선언
        b1.setText("자바로 추가1"); //버튼뷰의 text 설정
 
        add.addView(b1); //add layout에 위에서 생성한 버튼 뷰를 집어 넣음
 
        container.addView(add); //container라는 id를 가진 레이아웃에 add 레이아웃을 
    }
cs

 

이렇게 쓰고 실제로 돌려보면 

위와 같이 나온다.

새로 추가한 레이아웃이 제일 마지막에 만들어 지게 되는데 이는 

아마 새로 추가한게 setContentView보다 아래에 있어서 activity_main.xml을 먼저 불러오고 나서 

추가했기 때문인 거 같다.

반응형