
Horizental guideline을 넣어주고 (55%로 설정함) LinearLayout을 ConstraintLayout 아래로 생성해준다
LinearLayout-vertical
LinearLayout 생성시 전체화면이 꽉차게 지정이 되기때문에 
layout_width와 height를 100dp정도로해서 화면에 잘 나타나게 해준다음,
상하좌우의 제약조건을 걸어줌 아래제약조건은 가이드라인에 맞춰준다
그리고 나서 editText,  button을 넣어주면 레이아웃안에 차례로 쌓인다.
각 아이디 지정해주고, java폴더에서 기능을 구현해주면 된다!


package com.example.myapplication0509;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import com.example.myapplication0509.databinding.ActivityMain2Binding;
public class MainActivity2 extends AppCompatActivity implements View.OnClickListener {
    Button btn_plus,btn_minus,btn_mul,btn_div;
    TextView result;
    EditText num1, num2;
    //바인딩 객체 만들기 -->어플에있는 모든 View에 대한 정보를 저장하고 있음
    ActivityMain2Binding binding;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityMain2Binding.inflate(getLayoutInflater());  //xml에 있는 모든 정보를 java로 가져온다
        //binding  객체는 setContentView 전에 쓰기
        setContentView(binding.getRoot());    //R.layout.activity_main2 쓸 필요 없음
/*        btn_plus = findViewById(R.id.btn_plus);
        btn_minus = findViewById(R.id.btn_minus);
        btn_mul = findViewById(R.id.btn_mul);
        btn_div = findViewById(R.id.btn_div);
        num1 = findViewById(R.id.num1);
        num2 = findViewById(R.id.num2);
        result = findViewById(R.id.result);*/    // --->findViewById 필요없음
        binding.btnPlus.setOnClickListener(this);
        binding.btnMinus.setOnClickListener(this);
        binding.btnMul.setOnClickListener(this);
        binding.btnDiv.setOnClickListener(this);
        //binding.___ 자동완성 btn 해주면 id값이 바뀐 것을 볼 수 있다.
    }
    @Override
    public void onClick(View view) {
        int _result= 0;
        int _num1 = Integer.parseInt(binding.num1.getText().toString());
        int _num2 = Integer.parseInt(binding.num2.getText().toString());
        if(view.getId()==R.id.btn_plus) {
            _result = _num1 + _num2;
        } else if(view.getId()==R.id.btn_minus){
            _result = _num1 - _num2;
        }else if(view.getId()==R.id.btn_mul){
            _result = _num1 * _num2;
        }else if(view.getId()==R.id.btn_div){
            _result = _num1 / _num2;
        }
        binding.result.setText("연산결과 : " + _result);
    }
}


 ActivityMain2Binding binding;
binding = ActivityMain2Binding.inflate(getLayoutInflater());setContentView(R.layout.activity_main2)가 아닌  setContentView(binding.getRoot()); btn_plus.setOnClickListener(this); 부분이 binding.btnPlus.setOnClickListener(this);로 바뀐다. 바인딩은 카멜기법으로 변수가 생성된다