<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="10dp"
tools:context=".MainActivity">
<EditText
android:id="@+id/Edit1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_margin="10dp"
android:textSize="20dp"
android:backgroundTint="#ffffff"
android:hint="숫자1"
>
</EditText>
<EditText
android:id="@+id/Edit2"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginBottom="25dp"
android:textSize="20dp"
android:backgroundTint="#ffffff"
android:hint="숫자2"
>
</EditText>
<TableLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TableRow>
<Button
android:id="@+id/cal_0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:layout_weight="1"
android:layout_marginRight="10dp"
android:text="0">
</Button>
<Button
android:id="@+id/cal_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:layout_weight="1"
android:layout_marginRight="10dp"
android:text="1">
</Button>
<Button
android:id="@+id/cal_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:layout_weight="1"
android:layout_marginRight="10dp"
android:text="2">
</Button>
<Button
android:id="@+id/cal_3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:layout_weight="1"
android:layout_marginRight="10dp"
android:text="3">
</Button>
<Button
android:id="@+id/cal_4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:layout_weight="1"
android:text="4">
</Button>
</TableRow>
<TableRow>
<Button
android:id="@+id/cal_5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:layout_weight="1"
android:layout_marginRight="10dp"
android:text="5">
</Button>
<Button
android:id="@+id/cal_6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:layout_weight="1"
android:layout_marginRight="10dp"
android:text="6">
</Button>
<Button
android:id="@+id/cal_7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:layout_weight="1"
android:layout_marginRight="10dp"
android:text="7">
</Button>
<Button
android:id="@+id/cal_8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:layout_weight="1"
android:layout_marginRight="10dp"
android:text="8">
</Button>
<Button
android:id="@+id/cal_9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:layout_weight="1"
android:text="9">
</Button>
</TableRow>
</TableLayout>
<Button
android:id="@+id/button1"
android:layout_height="60dp"
android:layout_width="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="20dp"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:textSize="20dp"
android:text="더하기"
>
</Button>
<Button
android:id="@+id/button2"
android:layout_height="60dp"
android:layout_width="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="20dp"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:textSize="20dp"
android:text="빼기"
>
</Button>
<Button
android:id="@+id/button3"
android:layout_height="60dp"
android:layout_width="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="20dp"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:textSize="20dp"
android:text="곱하기"
>
</Button>
<Button
android:id="@+id/button4"
android:layout_height="60dp"
android:layout_width="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="20dp"
android:layout_marginBottom="15dp"
android:backgroundTint="#50000000"
android:textColor="@color/black"
android:textSize="20dp"
android:text="나누기"
>
</Button>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:paddingLeft="10dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="40dp"
android:textColor="#ff0000"
android:text="계산결과 :">
</TextView>
<TextView
android:id="@+id/ans"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:textSize="40dp"
android:textColor="#000000"
android:text="">
</TextView>
</LinearLayout>
</LinearLayout>
package com.example.calculatpr;
import androidx.appcompat.app.AppCompatActivity;
import android.annotation.SuppressLint;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
TextView Edit1,Edit2,ans;
Button button1,button2,button3,button4;
String num1,num2;
Integer result;
@SuppressLint("ClickableViewAccessibility")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setTitle("테이블레이아웃 계산기");
Edit1=(EditText)findViewById(R.id.Edit1);
Edit2=(EditText)findViewById(R.id.Edit2);
ans=(TextView) findViewById(R.id.ans);
button1=(Button) findViewById(R.id.button1);
button2=(Button) findViewById(R.id.button2);
button3=(Button) findViewById(R.id.button3);
button4=(Button) findViewById(R.id.button4);
Button[] numButtons = new Button[10];
Integer[] numBtnIDs={R.id.cal_0,R.id.cal_1,R.id.cal_2,R.id.cal_3,R.id.cal_4,R.id.cal_5,R.id.cal_6,R.id.cal_7,R.id.cal_8,R.id.cal_9};
button1.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View arg0, MotionEvent arg1) {
num1=Edit1.getText().toString();
num2=Edit2.getText().toString();
result=Integer.parseInt(num1)+Integer.parseInt(num2);
ans.setText(result.toString());
return false;
}
});
button2.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View arg0, MotionEvent arg1) {
num1=Edit1.getText().toString();
num2=Edit2.getText().toString();
result=Integer.parseInt(num1)-Integer.parseInt(num2);
ans.setText(result.toString());
return false;
}
});
button3.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View arg0, MotionEvent arg1) {
num1=Edit1.getText().toString();
num2=Edit2.getText().toString();
result=Integer.parseInt(num1)*Integer.parseInt(num2);
ans.setText(result.toString());
return false;
}
});
button4.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View arg0, MotionEvent arg1) {
num1=Edit1.getText().toString();
num2=Edit2.getText().toString();
result=Integer.parseInt(num1)/Integer.parseInt(num2);
ans.setText(result.toString());
return false;
}
});
for( int i=0;i<numBtnIDs.length;i++){
numButtons[i]=(Button) findViewById(numBtnIDs[i]);
}
for(int i=0;i<numBtnIDs.length;i++){
final int index;
index=i;
numButtons[index].setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(Edit1.isFocused()==true){
num1=Edit1.getText().toString()+numButtons[index].getText().toString();
Edit1.setText(num1);
}else if(Edit2.isFocused()==true) {
num2 = Edit2.getText().toString() + numButtons[index].getText().toString();
Edit2.setText(num2);
}else{
Toast.makeText(getApplicationContext(),"먼저 에디트텍스트를 선택하세요",Toast.LENGTH_SHORT).show();
}
}
});
}
}
}
실행화면
'안드로이드 > 연습' 카테고리의 다른 글
[Android] 자동완성텍스트뷰어 (0) | 2021.08.18 |
---|---|
[Android] 시간예약 (0) | 2021.08.18 |
[Android] xml RelativeLayout 2 (0) | 2021.08.11 |
[Android] RelativeLayout 속성 (0) | 2021.08.11 |
[Android] xml layout_weight (0) | 2021.08.11 |