Android Studio计算器页面
时间: 2023-11-02 08:10:08 浏览: 93
要创建一个简单的计算器应用程序,可以使用Android Studio中的布局编辑器和Java代码。
1. 打开Android Studio并创建一个新项目。
2. 在项目中创建一个新的Activity,用于计算器页面。
3. 打开布局编辑器并将一个EditText和多个Button添加到布局中,以便用户可以输入数字和执行计算。
4. 针对每个按钮添加一个OnClickListener,以便在用户点击时执行适当的计算操作,并将结果显示在EditText中。
5. 使用Java代码编写计算器逻辑。可以使用Java中的数学库和运算符来执行简单的数学计算。
这是一个简单计算器页面的示例布局代码:
```
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<EditText
android:id="@+id/resultEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="0"
android:textAlignment="center"
android:textSize="32sp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/button1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="1"
android:textSize="24sp" />
<Button
android:id="@+id/button2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="2"
android:textSize="24sp" />
<Button
android:id="@+id/button3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="3"
android:textSize="24sp" />
<Button
android:id="@+id/buttonPlus"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="+"
android:textSize="24sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/button4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="4"
android:textSize="24sp" />
<Button
android:id="@+id/button5"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="5"
android:textSize="24sp" />
<Button
android:id="@+id/button6"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="6"
android:textSize="24sp" />
<Button
android:id="@+id/buttonMinus"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="-"
android:textSize="24sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/button7"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="7"
android:textSize="24sp" />
<Button
android:id="@+id/button8"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="8"
android:textSize="24sp" />
<Button
android:id="@+id/button9"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="9"
android:textSize="24sp" />
<Button
android:id="@+id/buttonMultiply"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="*"
android:textSize="24sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/buttonClear"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="C"
android:textSize="24sp" />
<Button
android:id="@+id/button0"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="0"
android:textSize="24sp" />
<Button
android:id="@+id/buttonEqual"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="="
android:textSize="24sp" />
<Button
android:id="@+id/buttonDivide"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="/"
android:textSize="24sp" />
</LinearLayout>
</LinearLayout>
```
在Java代码中,我们可以使用以下逻辑来执行简单的计算:
```
public class CalculatorActivity extends AppCompatActivity {
private EditText resultEditText;
private double num1 = 0;
private double num2 = 0;
private String operator = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_calculator);
resultEditText = findViewById(R.id.resultEditText);
Button button0 = findViewById(R.id.button0);
Button button1 = findViewById(R.id.button1);
Button button2 = findViewById(R.id.button2);
Button button3 = findViewById(R.id.button3);
Button button4 = findViewById(R.id.button4);
Button button5 = findViewById(R.id.button5);
Button button6 = findViewById(R.id.button6);
Button button7 = findViewById(R.id.button7);
Button button8 = findViewById(R.id.button8);
Button button9 = findViewById(R.id.button9);
Button buttonPlus = findViewById(R.id.buttonPlus);
Button buttonMinus = findViewById(R.id.buttonMinus);
Button buttonMultiply = findViewById(R.id.buttonMultiply);
Button buttonDivide = findViewById(R.id.buttonDivide);
Button buttonEqual = findViewById(R.id.buttonEqual);
Button buttonClear = findViewById(R.id.buttonClear);
button0.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resultEditText.append("0");
}
});
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resultEditText.append("1");
}
});
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resultEditText.append("2");
}
});
button3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resultEditText.append("3");
}
});
button4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resultEditText.append("4");
}
});
button5.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resultEditText.append("5");
}
});
button6.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resultEditText.append("6");
}
});
button7.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resultEditText.append("7");
}
});
button8.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resultEditText.append("8");
}
});
button9.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resultEditText.append("9");
}
});
buttonPlus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
num1 = Double.parseDouble(resultEditText.getText().toString());
operator = "+";
resultEditText.setText("");
}
});
buttonMinus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
num1 = Double.parseDouble(resultEditText.getText().toString());
operator = "-";
resultEditText.setText("");
}
});
buttonMultiply.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
num1 = Double.parseDouble(resultEditText.getText().toString());
operator = "*";
resultEditText.setText("");
}
});
buttonDivide.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
num1 = Double.parseDouble(resultEditText.getText().toString());
operator = "/";
resultEditText.setText("");
}
});
buttonEqual.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
num2 = Double.parseDouble(resultEditText.getText().toString());
switch (operator) {
case "+":
resultEditText.setText(Double.toString(num1 + num2));
break;
case "-":
resultEditText.setText(Double.toString(num1 - num2));
break;
case "*":
resultEditText.setText(Double.toString(num1 * num2));
break;
case "/":
resultEditText.setText(Double.toString(num1 / num2));
break;
}
}
});
buttonClear.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resultEditText.setText("");
num1 = 0;
num2 = 0;
}
});
}
}
```
这个简单的计算器应用程序现在可以在Android设备上运行并使用。
阅读全文