首先将布局改为线性布局 我这里实现的是两个随机数的加法运算,其他运算只需将加法改为对应方法即可。 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:orientation="vertical" android:gravity="center_horizontal" android:layout_height="match_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="两个随机数的加法运算" android:textSize="35sp" android:textColor="#E91E63"/> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_marginTop="50dp" > <EditText android:id="@+id/et_1" android:layout_width="80dp" android:layout_height="60dp" android:textSize="30sp" android:layout_marginTop="10dp" android:enabled="false" android:textColor="#03A9F4" /> <TextView android:layout_width="40dp" android:layout_height="60dp" android:textStyle="bold" android:text="+" android:textSize="40sp" android:layout_gravity="center" /> <EditText android:id="@+id/et_2" android:layout_width="80dp" android:layout_height="60dp" android:textSize="30sp" android:layout_marginTop="10dp" android:enabled="false" android:textColor="#03A9F4" /> <TextView android:layout_width="40dp" android:layout_height="60dp" android:textStyle="bold" android:text="=" android:textSize="40sp" android:layout_gravity="center" /> <EditText android:id="@+id/et_3" android:layout_width="80dp" android:layout_height="60dp" android:textSize="30sp" android:layout_marginTop="10dp" android:text="" android:textColor="#03A9F4" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:layout_gravity="center_horizontal" android:layout_marginTop="60dp"> <Button android:id="@+id/btn_1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="开始出题" android:textSize="30sp" android:layout_marginLeft="10dp" /> <Button android:id="@+id/btn_2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="判断正误" android:textSize="30sp" android:layout_marginLeft="40dp" /> </LinearLayout> </LinearLayout>
将具体布局设置好后便可以开始进行后续操作
这些是在操作过程中需要导入的包
import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; import java.util.Random;
下面进行按钮和配置
public class MainActivity extends AppCompatActivity implements OnClickListener{ private Button mBut1; private Button mBut2; private Random mRandom; private EditText mEdit1; private EditText mEdit2; private EditText mEdit3; private int x,y; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.text1); mBut1=findViewById(R.id.btn_1); mBut2=findViewById(R.id.btn_2); mEdit1=findViewById(R.id.et_1); mEdit2=findViewById(R.id.et_2); mEdit3=findViewById(R.id.et_3); mBut1.setOnClickListener(this); mBut2.setOnClickListener(this); mRandom=new Random(); //创建对象 myRandom(); //声明获取随机数的方法 mEdit3.requestFocus(); //让et_3处于焦点状态 } private void myRandom() { x=mRandom.nextInt(100)+1; y=mRandom.nextInt(100)+1; } @Override public void onClick(View v) { String dite3=mEdit3.getText().toString(); switch(v.getId()){ case R.id.btn_1:{//开始出题 myRandom(); mEdit1.setText(String.valueOf(x)); mEdit2.setText(String.valueOf(y)); } break; case R.id.btn_2://判断正误 int result = Integer.parseInt(dite3);//Integer.parseInt(String s)返回整数值 if (result == x + y) { Toast.makeText(MainActivity.this, "回答正确", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "回答错误", Toast.LENGTH_SHORT).show(); mEdit3.setText(""); } break; } } }
下面是运行结果:
点击开始出题会出现两个随机数 在et_3中输入答案
如果输入正确会出现“回答正确”,如果错误会出现“回答错误”并会将自己输入的结果清空;
到此,一个简单的小玩意儿就完成了,欢迎评论区留言。