'[Android] - 위젯.소스/Layout'에 해당되는 글 1건

  1. 2017.01.09 Dynamic Layout Create

** Dynamic Layout Create **

 

1. 프로젝트명 : ToggleCustom

2. 정의 : activity_main.xml을 사용하지 않고 java단에서 Layout을 생성하기

3. 화면 :

   

 

4. 안드로이드 버전

     - 스튜디오 : v2.2.3

     - Minumum SDK : API 19:Android 4.4. (KitKat)

 

5. 소스목록

   1. MainActivity.java 

 

6. 소스

 

  1. MainActivity.java

 

 package com.example.farmer.layoutjavacreate;

import android.graphics.Color;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.LinearLayout;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.activity_main);

        useDynamic();
    }
    //동적으로 Layout및 버튼 생성
    private void useDynamic(){
        //1. Layout 생성
        LinearLayout layoutMain = new LinearLayout(getApplicationContext());
        LinearLayout.LayoutParams paramsLayout = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT);
        layoutMain.setOrientation(LinearLayout.VERTICAL);
        layoutMain.setLayoutParams(paramsLayout);
        //layoutMain.setBackground(Color.parseColor("#ffffff"));

        //2. Button 생성
        Button button01 = new Button(getApplicationContext());
        Button button02 = new Button(getApplicationContext());
        LinearLayout.LayoutParams paramsButton = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
        button01.setLayoutParams(paramsButton);
        button02.setLayoutParams(paramsButton);

        layoutMain.addView(button01);
        layoutMain.addView(button02);

        button01.setText("버튼 1");
        button02.setText("버튼 2");

        setContentView(layoutMain);  //layoutMain은 View임
    }
}

 

Posted by 농부지기
,