Android 将enabled设置回true后,无法编辑EditText

Android 将enabled设置回true后,无法编辑EditText,android,android-edittext,Android,Android Edittext,我有一个EditText页面标题,只有当我的RelativeLayout addPhotoLayout不可见时,它才应该是可编辑的。这是我的代码: if(addPhotoLayout.getVisibility() == View.VISIBLE) { pageTitle.setEnabled(false); } else { pageTitle.setEnabled(true); } 问题是,即使addPhotoLayout消失或不再可见,pageTitle也不会恢复到其可编

我有一个
EditText页面标题
,只有当我的
RelativeLayout addPhotoLayout
不可见时,它才应该是可编辑的。这是我的代码:

if(addPhotoLayout.getVisibility() == View.VISIBLE) {
    pageTitle.setEnabled(false);
} else {
    pageTitle.setEnabled(true);
}

问题是,即使
addPhotoLayout
消失或不再可见,
pageTitle
也不会恢复到其可编辑状态。我确实尝试过将
focusable
focusableInTouchMode
的值更改为
focusableInTouchMode
,但同样的问题仍然存在。

在更新
addPhotoLayout
的可见性时,需要更新
pageTitle
的状态。 在您的
setMomentPicture
方法中,您正在将
addPhotoLayout
的可见性设置为
GONE
,但是
pageTitle
不会收到此通知

您可以实现如下方法:

private method setAddPhotoLayoutVisible(boolean setVisible) {
  if(setVisible) {
    addPhotoLayout.setVisibility(View.VISIBLE);
    pageTitle.setEnabled(false);
  } else {
    addPhotoLayout.setVisibility(View.GONE);
    pageTitle.setEnabled(true);
  }
}

当您需要更新
addPhotoLayout

的可见性时,可以调用它。请尝试将setEditable设置为true,将focusableintouchmode设置为true,然后再次尝试。请不要在堆栈溢出上发布像paste.ofcode.org这样的短暂内容。