在textview android中写入特定文本后启用按钮可单击
我正在尝试建立一个登录方法,其中一个人必须写下其特定域的电子邮件地址 e、 g在textview android中写入特定文本后启用按钮可单击,android,Android,我正在尝试建立一个登录方法,其中一个人必须写下其特定域的电子邮件地址 e、 grob@playground.football.in 现在,我的意图是我的代码应该检查域,即playery.football.in,如果匹配,那么现在应该只启用用于登录的按钮(在写入特定域之前,该按钮是禁用/不可访问的) 我已经完成了一半的工作。为了获得如下所示的域 email = (EditText) findViewById(R.id.email); verify = (Button) findViewById(R
rob@playground.football.in
现在,我的意图是我的代码应该检查域,即playery.football.in,如果匹配,那么现在应该只启用用于登录的按钮(在写入特定域之前,该按钮是禁用/不可访问的)
我已经完成了一半的工作。为了获得如下所示的域
email = (EditText) findViewById(R.id.email); verify = (Button) findViewById(R.id.button); verify.setEnabled(false); String getEmail = email.getText().toString();
String x = getEmail.substring(getEmail.lastIndexOf('@') + 1);
if (x.equals(domain)) {
verify.setEnabled(true);
}
使用
email.addTextChangedListener()
将TextChangedListener
添加到您的电子邮件EditText
,并将您的检查放入onTextChanged()
中
以下是工作代码。按以下方式更新您的代码:
..................
.........................
EditText email = (EditText) findViewById(R.id.email);
Button verify = (Button) findViewById(R.id.button);
verify.setEnabled(false);
email.addTextChangedListener(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) {
String getEmail = email.getText().toString();
String x = getEmail.substring(getEmail.lastIndexOf('@') + 1);
if (x.equals(domain)) {
verify.setEnabled(true);
}
}
@Override
public void afterTextChanged(Editable editable) {
}
});
..............
.....................
希望这将有助于~email=(EditText)查找视图(R.id.email);验证=(按钮)findViewById(R.id.Button);验证.setEnabled(false);字符串getEmail=email.getText().toString();字符串x=getEmail.substring(getEmail.lastIndexOf('@')+1);如果(x.equals(domain)){verify.setEnabled(true);}那么到底是什么问题呢?请参阅下面我的答案。希望这能对您有所帮助。@Rob如果我的解决方案非常有效,请将此答案标记为已接受。提前谢谢:)对不起,兄弟,实际上我的网络被阻塞了,我不能正确地说谢谢。。你的代码真的很棒。在编辑了你代码中的一些片段之后,它以非常惊人的方式帮助了我@Ferdous Ahamed我可以获取你的facebook电子邮件id吗@阿哈迈德