Reputation: 119
I am trying to make edittext_2
not editable if edittext_1
is empty, but if edittext_1
is not empty I want edittext_2
to be editable.
I tried this code:
if (edittext_1.getText().toString().equals(""))
{
edittext_2.setEnabled(false);
}
else
{
edittext_2.setEnabled(true);
}
In the beginning the code works fine it makes edittext_2
not editable, but when I enter a value in edittext_1
, edittext_2
still not editable.
Upvotes: 1
Views: 5558
Reputation: 8251
What you have initialized will work for first time but when you make some changes in the edittext_1
, you should again enable the edittext_2
.Add the following code also,
edittext_1.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
if (edittext_1.getText().toString().equals(""))
{
edittext_2.setEnabled(false);
}
else
{
edittext_2.setEnabled(true);
}
}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
public void onTextChanged(CharSequence s, int start, int before, int count) {}
});
Upvotes: 0
Reputation: 2005
Try this
editText2.setEnabled(false);
editText1.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
if (!editText1.getText().toString().equals("")) {
editText2.setEnabled(true);
} else {
editText2.setEnabled(false);
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
Upvotes: 0
Reputation: 4231
You need to add edittext_1
on TextWatcher()
.
Try this
edittext_1.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// TODO Auto-generated method stub
if (s.toString().equals("")) {
edittext_2.setEnabled(false);
} else {
edittext_2.setEnabled(true);
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
Upvotes: 3
Reputation: 18933
Use this.
if (edittext_1.getText().equalsIgnoreCase(""))
{
edittext_2.setEnabled(false);
edittext_2.setFocusable(false);
}
else
{
edittext_2.setEnabled(true);
edittext_2.setFocusable(true);
}
Upvotes: 0