使用 TextWatcher 添加两个负数
我绝对是初学者。我将添加两个负数并使用 TextWatcher 显示结果。 当我尝试编辑第二个(负数)数字时,应用程序崩溃了。我不知道问题出在哪里。 主要活动java代码是 ...
package com.example.addnegativnumbers;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
EditText Number1, Number2;
TextView Result;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Number1 = findViewById(R.id.Number1);
Number2 = findViewById(R.id.Number2);
Result = findViewById(R.id.Result);
TextWatcher textWatcher = new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
if (!Number1.getText().toString().equals("") && !Number2.getText().toString().equals("")) {
int temp1 = Integer.parseInt(Number1.getText().toString());
int temp2 = Integer.parseInt(Number2.getText().toString());
Result.setText(String.valueOf(temp1 + temp2));
}
;
}
@Override
public void afterTextChanged(Editable editable) {
}
};
Number1.addTextChangedListener(textWatcher);
Number2.addTextChangedListener(textWatcher);
}
} ...
I'm absolute beginner. I will to add two negativ numbers and the result display with TextWatcher.
When I try to edit the second (negative) number, the app is crashes. I don't know where is the problem.
Main Activity java code is
...
package com.example.addnegativnumbers;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
EditText Number1, Number2;
TextView Result;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Number1 = findViewById(R.id.Number1);
Number2 = findViewById(R.id.Number2);
Result = findViewById(R.id.Result);
TextWatcher textWatcher = new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
if (!Number1.getText().toString().equals("") && !Number2.getText().toString().equals("")) {
int temp1 = Integer.parseInt(Number1.getText().toString());
int temp2 = Integer.parseInt(Number2.getText().toString());
Result.setText(String.valueOf(temp1 + temp2));
}
;
}
@Override
public void afterTextChanged(Editable editable) {
}
};
Number1.addTextChangedListener(textWatcher);
Number2.addTextChangedListener(textWatcher);
}
}
...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Activity_main.xml 的一部分:
Logcat 第 39 行的一部分
是:
问题是字符串“-”
Part of activity_main.xml:
Part of Logcat
Line 39 is:
The problem is the string "-"