This is confusing me:
As far as I have read, a view with setVisibility(View.GONE); should not receive any more touch- or click events. My layout has two parts, which
What I expect is happening is that you make a view invisible, but that views children still respond to clicks (ie your view is a ViewGroup). You could do something along the lines of:
private void hideTheChildren(View v){
if(v instanceof ViewGroup) {
int count = ((ViewGroup)v).getChildCount();
for(int k = 0 ; k < count ; k++) {
hideTheChildren(((ViewGroup)v).getChildAt(k));
}
v.setVisibility(View.GONE);
}
else {
v.setClickable(false);
v.setVisibility(View.GONE);
}
}
of course then you also have to do the opposite
private void showTheChildren(View v){
if(v instanceof ViewGroup) {
int count = ((ViewGroup)v).getChildCount();
for(int k = 0 ; k < count ; k++) {
showTheChildren(((ViewGroup)v).getChildAt(k));
}
v.setVisibility(View.VISIBLE);
}
else {
v.setClickable(true);
v.setVisibility(View.VISIBLE);
}
}
This has worked for me in the past. I don't currently know of a better way to do this.