오늘보다 더 나은 내일의 나에게_

비전공자의 IoT 국비 교육 수강일지 Day_77 본문

비전공자의 코딩일지

비전공자의 IoT 국비 교육 수강일지 Day_77

chan_96 2022. 4. 7. 18:05
728x90

안드로이드

실습문제

​+ 버튼을 누르면 0값이 증가, - 버튼을 누르면 0값이 감소

MainActivity.java
더보기
package com.example.ex0407;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity implements View.OnClickListener{

    TextView num;
    int number = 0;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        num = findViewById(R.id.num);
        Button btnP = findViewById(R.id.btnP);
        Button btnM = findViewById(R.id.btnM);

        btnP.setOnClickListener(this);
        btnM.setOnClickListener(this);
    }

    @Override
    public void onClick(View view) {
        int viewId = view.getId();

        //TextView 값을 연산하기 위해서 정수 변환
        String num1 = num.getText().toString();
        int n = Integer.parseInt(num1);

        if(viewId == R.id.btnP){
            //연산 후 결과값을 TextView에 설정정
           n += 1;

           //setText()에 값을 넣을 경우 반드시 문자열만 가능!
           num.setText(n+"");
        }else{
            if(n > 0) {
                n -= 1;
            }
            num.setText(String.valueOf(n));
        }

        /*if(viewId == R.id.btnP){
            num.setText(String.valueOf(++number));
        }else{
            num.setText(String.valueOf(--number));
        }*/
    }
}

첫번째 숫자와, 두번째 숫자를 입력받고 버튼을 눌러 결과 출력
더보기
package com.example.ex0407;

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;

public class MainActivity2 extends AppCompatActivity implements View.OnClickListener{

    EditText etNum1;
    EditText etNum2;
    TextView tvResult;
    Button btnPlus,btnMinus,btnMul,btnDiv;

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

        //View를 초기화하는 메소드
        initView();

        btnPlus.setOnClickListener(this);
        btnMinus.setOnClickListener(this);
        btnMul.setOnClickListener(this);
        btnDiv.setOnClickListener(this);

    }

    private void initView() {
        etNum1 = findViewById(R.id.etNum1);
        etNum2 = findViewById(R.id.etNum2);
        btnPlus = findViewById(R.id.plus);
        btnMinus = findViewById(R.id.minus);
        btnMul = findViewById(R.id.mul);
        btnDiv = findViewById(R.id.div);
        tvResult = findViewById(R.id.tvResult);
    }

    @Override
    public void onClick(View view) {
        int getId = view.getId();
        double result = 0;
        //int Num1 = Integer.parseInt(etNum1.getText().toString());
        //int Num2 = Integer.parseInt(etNum2.getText().toString());
        String getResultText = tvResult.getText().toString().substring(0,7);

        double Num1 = Double.parseDouble(etNum1.getText().toString());
        double Num2 = Double.parseDouble(etNum2.getText().toString());

        if(getId == R.id.plus){
            result = Num1+Num2;
        }else if(getId == R.id.minus){
            result = Num1-Num2;
        }else if(getId == R.id.mul){
            result = Num1*Num2;
        }else{
            result = Double.parseDouble(String.format("%.2f",Num1/Num2));
        }

        tvResult.setText(getResultText+String.valueOf(result));

    }
}

라즈베리파이

윈도우 환경설정
728x90
Comments