У меня есть TabHost с тремя вкладками. Содержание первой вкладки является Намерением пользовательского действия, кто contentview, относительное расположение, содержащее два EditTexts и два CheckBoxes (и кнопка).
Каждый флажок при проверке позволяет/запрещает один EditText и другой флажок. и я пошел о том как это:
chkPolaziste.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)
{
if ( isChecked )
{
entryPolaziste.setFocusable(false);
entryPolaziste.setEnabled(false);
chkOdrediste.setFocusable(false);
chkOdrediste.setEnabled(false);
}
else
{
entryPolaziste.setEnabled(true);
entryPolaziste.setFocusable(true);
chkOdrediste.setEnabled(true);
chkOdrediste.setFocusable(true);
}
}
});
И это работает. Когда один флажок проверяется, он отключает другой флажок и его EditText, и когда я снял флажок с ним, EditText и другому флажку включают. Но, после того, как это включено, я ничего не могу ввести в EditText. Это просто щелкает на мгновение, когда я нажимаю на него, и фокус переключателей к другому представлению. Это смотрит на меня, как будто управление не полностью включено.
Я также попытался вызвать внимание на повторно включенный EditText с requestFocus () и попробовал к setFocusableInTouchMode (), но ни один не работал.
У меня нет устройства на базе Android, таким образом, я только тестирую это в эмуляторе (Минута, SDK 1.6).