Android

์•ˆ๋“œ๋กœ์ด๋“œ ์ŠคํŠœ๋””์˜ค ๊ณ ์–‘์ด ๋‚˜์ด ๊ณ„์‚ฐํ•˜์—ฌ ์•Œ๋ ค์ฃผ๋Š” app ๊ฐœ๋ฐœ

567Rabbit 2024. 6. 5. 12:16

 

ํ™”๋ฉด ๊ฐœ๋ฐœํ•˜๊ธฐ

 

 

 

 

๋กœ์ง ๊ฐœ๋ฐœํ•˜๊ธฐ

 

package com.~.catage;

import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

import com.google.android.material.snackbar.Snackbar;

import java.util.Calendar;


public class MainActivity extends AppCompatActivity {

    // ๋งค๊ฐœ๋ณ€์ˆ˜ ์ž…๋ ฅํ•˜๊ธฐ
    Button btnCal;
    EditText editYear;
    TextView txtAge;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        //ํ™”๋ฉด๊ณผ ์ฝ”๋“œ ์—ฐ๊ฒฐํ•ด์ฃผ๊ธฐ
        btnCal = findViewById(R.id.btnCal);
        editYear = findViewById(R.id.editYear);
        txtAge = findViewById(R.id.txtAge);
        
        
        //๋ฒ„ํŠผ ๋ˆ„๋ฅด๋ฉด ๋™์ž‘ํ•  ์ฝ”๋“œ
        btnCal.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                //1. ์œ ์ €๊ฐ€ ์ž…๋ ฅํ•œ ๋…„๋„๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค.
                String strYear = editYear.getText().toString().trim();

                //1-1. ์ž…๋ ฅํ•œ ๋…„๋„๊ฐ€ ๋ฌธ์ž์—ด์ด๋‹ˆ๊นŒ ์ •์ˆ˜๋กœ ๋ฐ”๊ฟ”์ค€๋‹ค.

                int year = 0;

                try {
                    year = Integer.parseInt(strYear);
                } catch (Exception e){
                    Snackbar.make(btnCal,"๋…„๋„๋Š” ์ˆซ์ž๋งŒ ์ž…๋ ฅํ•˜์„ธ์š”!"
                            ,Snackbar.LENGTH_SHORT).show();
                    return;
                }

                //2. ํ˜„์žฌ ๋…„๋„๋ฅผ ๊ฐ€์ ธ์™€์„œ ์œ ์ €๊ฐ€ ์ž…๋ ฅํ•œ ๋…„๋„๋ฅผ ๋บ€๋‹ค.
                int currentYear = Calendar.getInstance().get(Calendar.YEAR); // ํ˜„์žฌ์‹œ๊ฐ„์„ ๊ฐ€์ ธ์˜จ๋‹ค.

                int age = currentYear - year;

                Log.i("Cat Main", ""+age); // ๋กœ๊ทธ์บฃ ๋ณด๊ธฐ

                if(age < 0){
                    Snackbar.make(btnCal,"๋…„๋„๋ฅผ ์ •ํ™•ํžˆ ์ž…๋ ฅํ•˜์„ธ์š”"
                            ,Snackbar.LENGTH_SHORT).show();
                    return;
                }

                //3. ๊ณ„์‚ฐ ๊ฒฐ๊ณผ๋ฅผ ํ…์ŠคํŠธ๋ทฐ์— ํ‘œ์‹œํ•œ๋‹ค.

                txtAge.setText("๋‚˜์ด๋Š” "+age+"์‚ด ์ž…๋‹ˆ๋‹ค");

            }
        });
    }
}