我有一个EditText pageTitle
,只有在我的RelativeLayout addPhotoLayout
不可见时才可以编辑。这是我的代码:
if(addPhotoLayout.getVisibility() == View.VISIBLE) {
pageTitle.setEnabled(false);
} else {
pageTitle.setEnabled(true);
}
问题是即使addPhotoLayout
消失或不再可见,pageTitle
也无法恢复其可编辑状态。我确实尝试更改focusable
和focusableInTouchMode
的值,但同样的问题仍然存在。
答案 0 :(得分:1)
更新pageTitle
的可见性时,您需要更新addPhotoLayout
的状态。
在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
的可见性时调用它。