|
发表于 2024-11-10 10:44:15
|
显示全部楼层
如果你希望在点击按钮后,程序对`EditText`中的值进行一次性处理,而不是持续不断地执行,你可以在点击事件中完成以下步骤:
1. **读取并处理`EditText`的值**。
2. **计算并更新需要展示的结果**。
3. **清空`EditText`以准备下一次输入**。
下面是实现这种逻辑的代码示例:
- import android.os.Bundle;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.Toast;
- import androidx.appcompat.app.AppCompatActivity;
- public class MainActivity extends AppCompatActivity {
- int n = 0;
- int i = 0;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- EditText editText = findViewById(R.id.editTextNumber);
- EditText editTextResult = findViewById(R.id.editTextNumberDecimal);
- Button myButton = findViewById(R.id.button);
- myButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- String content = editText.getText().toString();
- if (!content.isEmpty()) {
- n++;
- if (content.equals("1")) {
- i++;
- }
- double c = (double) i / n;
- double d = 0.5 - c;
- editTextResult.setText(String.valueOf(d));
- editText.setText(""); // 清空EditText的内容
- } else {
- Toast.makeText(MainActivity.this, "请输入一个有效的数值", Toast.LENGTH_SHORT).show();
- }
- }
- });
- }
- }
复制代码
### 代码说明:
1. **读取与处理**:
- 在按钮点击时,获取`EditText`中的内容,并检查是否为非空。
2. **计算结果**:
- 根据要求进行计数和计算。这里假设`n`是总数计数器,当输入内容为`1`时增加`i`。
3. **清空输入**:
- 在处理后立刻清空`EditText`中的输入内容,以便用户可以输入新的数值。
4. **用户提示**:
- 如果`EditText`为空,当按钮点击时,显示一个 `Toast` 提示用户输入值。
通过该实现,在每次点击按钮时,都会对输入进行一次处理并清空输入框,满足你的设计需求。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|