可能会出现bug,不过现在还没未测出,欢迎提出你的bug
这里逻辑处理时将运算符离散化为+:-1,-:-2,*:-3,÷:-4。
页面布局:mylayout.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"
>
<EditText
android:id="@+id/result_text"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:textSize="30sp"
android:padding="20dp"
android:layout_gravity="end"
android:editable="false"
android:textAlignment="textEnd"
android:singleLine="true"
android:text="0"
/>
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="70dp"
android:textSize="22sp"
android:text="C"
android:id="@+id/c_btn" />
<Button
android:layout_width="0dp"
android:layout_weight="2"
android:layout_height="70dp"
android:textSize="22sp"
android:text="Del"
android:id="@+id/del_btn" />
<Button
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="70dp"
android:textSize="22sp"
android:text="÷"
android:id="@+id/div_btn" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="70dp"
android:textSize="22sp"
android:text="1"
android:id="@+id/num_one" />
<Button
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="70dp"
android:textSize="22sp"
android:text="2"
android:id="@+id/num_two" />
<Button
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="70dp"
android:textSize="22sp"
android:text="3"
android:id="@+id/num_three" />
<Button
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="70dp"
android:textSize="22sp"
android:text="+"
android:id="@+id/add_btn" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="70dp"
android:textSize="22sp"
android:text="4"
android:id="@+id/num_four" />