打开我的应用程序后,一旦在顶部框中输入一个字母,我的按钮就会激活。由于某种原因,在我输入一个字母后,它会执行相反的操作,它不允许我添加,但一旦我从框中删除任何内容,它就会允许我添加它。
我尝试过调试,但没有收到任何错误。我缺少一些代码吗?
final Button addBtn = (Button) findViewById(R.id.btnAdd);
addBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
TopGame topGame = new TopGame(dbHandler.getTopGameCount(), String.valueOf(gameTxt.getText()), String.valueOf(platformTxt.getText()), String.valueOf(releaseTxt.getText()), String.valueOf(priorityTxt.getText()));
dbHandler.createGame(topGame);
TopGames.add(topGame);
Toast.makeText(getApplicationContext(),String.valueOf(gameTxt.getText()) + " has been added to your List!", Toast.LENGTH_SHORT).show();
}
});
gameTxt.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i2, int i3) {
}
@TargetApi(Build.VERSION_CODES.GINGERBREAD)
@Override
public void onTextChanged(CharSequence charSequence, int i, int i2, int i3) {
addBtn.setEnabled(String.valueOf(gameTxt.getText()).trim().isEmpty());
}
@Override
public void afterTextChanged(Editable editable) {
}
});
最佳答案
当文本为空时,您将启用该按钮。您需要更改此行
addBtn.setEnabled(String.valueOf(gameTxt.getText()).trim().isEmpty());
至
addBtn.setEnabled(!String.valueOf(gameTxt.getText()).trim().isEmpty());
这个。
关于java - 输入后我的按钮无法激活,我不明白为什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23593367/