使用android studio创建一个android项目并制作一个简易计算器
时间: 2023-07-14 12:11:47 浏览: 205
Android studio实现简单计算器
5星 · 资源好评率100%
好的,下面是操作步骤:
1. 打开 Android Studio,选择 "Start a new Android Studio project",然后按照向导操作创建一个新的项目。
2. 打开 layout 文件夹,找到 activity_main.xml 文件,删除其内容,然后将以下代码复制进去:
```
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/result_text_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginBottom="16dp"
android:textSize="24sp"
android:textAlignment="center"
android:text="0"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/button_1"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="1"/>
<Button
android:id="@+id/button_2"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="2"/>
<Button
android:id="@+id/button_3"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="3"/>
<Button
android:id="@+id/button_plus"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="+"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/button_4"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="4"/>
<Button
android:id="@+id/button_5"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="5"/>
<Button
android:id="@+id/button_6"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="6"/>
<Button
android:id="@+id/button_minus"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="-"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/button_7"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="7"/>
<Button
android:id="@+id/button_8"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="8"/>
<Button
android:id="@+id/button_9"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="9"/>
<Button
android:id="@+id/button_multiply"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="*"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/button_clear"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="C"/>
<Button
android:id="@+id/button_0"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="0"/>
<Button
android:id="@+id/button_equals"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="="/>
<Button
android:id="@+id/button_divide"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="/"/>
</LinearLayout>
</LinearLayout>
```
3. 打开 MainActivity.java 文件,然后将以下代码复制进去:
```
package com.example.calculator;
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 {
private TextView mResultTextView;
private String mPendingOperation = "=";
private double mOperand1 = Double.NaN;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mResultTextView = findViewById(R.id.result_text_view);
findViewById(R.id.button_0).setOnClickListener(this);
findViewById(R.id.button_1).setOnClickListener(this);
findViewById(R.id.button_2).setOnClickListener(this);
findViewById(R.id.button_3).setOnClickListener(this);
findViewById(R.id.button_4).setOnClickListener(this);
findViewById(R.id.button_5).setOnClickListener(this);
findViewById(R.id.button_6).setOnClickListener(this);
findViewById(R.id.button_7).setOnClickListener(this);
findViewById(R.id.button_8).setOnClickListener(this);
findViewById(R.id.button_9).setOnClickListener(this);
findViewById(R.id.button_clear).setOnClickListener(this);
findViewById(R.id.button_plus).setOnClickListener(this);
findViewById(R.id.button_minus).setOnClickListener(this);
findViewById(R.id.button_multiply).setOnClickListener(this);
findViewById(R.id.button_divide).setOnClickListener(this);
findViewById(R.id.button_equals).setOnClickListener(this);
}
@Override
public void onClick(View v) {
String buttonPressed = ((Button) v).getText().toString();
if (buttonPressed.equals("C")) {
mOperand1 = Double.NaN;
mResultTextView.setText("0");
mPendingOperation = "=";
return;
}
if (buttonPressed.equals("=")) {
if (Double.isNaN(mOperand1)) {
return;
}
double operand2 = Double.parseDouble(mResultTextView.getText().toString());
if (mPendingOperation.equals("+")) {
mOperand1 += operand2;
} else if (mPendingOperation.equals("-")) {
mOperand1 -= operand2;
} else if (mPendingOperation.equals("*")) {
mOperand1 *= operand2;
} else if (mPendingOperation.equals("/")) {
mOperand1 /= operand2;
}
mResultTextView.setText(String.valueOf(mOperand1));
mPendingOperation = "=";
return;
}
if (buttonPressed.equals("+") || buttonPressed.equals("-") ||
buttonPressed.equals("*") || buttonPressed.equals("/")) {
if (!Double.isNaN(mOperand1)) {
double operand2 = Double.parseDouble(mResultTextView.getText().toString());
if (mPendingOperation.equals("+")) {
mOperand1 += operand2;
} else if (mPendingOperation.equals("-")) {
mOperand1 -= operand2;
} else if (mPendingOperation.equals("*")) {
mOperand1 *= operand2;
} else if (mPendingOperation.equals("/")) {
mOperand1 /= operand2;
}
mResultTextView.setText(String.valueOf(mOperand1));
}
mPendingOperation = buttonPressed;
mOperand1 = Double.parseDouble(mResultTextView.getText().toString());
return;
}
if (buttonPressed.equals(".")) {
if (mResultTextView.getText().toString().contains(".")) {
return;
}
mResultTextView.append(".");
return;
}
mResultTextView.append(buttonPressed);
}
}
```
4. 运行应用,你会看到一个简易的计算器界面。试着输入一些数字和运算符,然后按下 "=" 以获得结果。
希望这个简单的示例能够帮助你开始制作自己的 Android 应用程序。
阅读全文