implement ViewGroup.removeViewInLayout()

This commit is contained in:
Julian Winkler
2024-03-27 22:47:11 +01:00
parent e477b56dec
commit 8f770d38d1

View File

@@ -83,7 +83,10 @@ public class ViewGroup extends View implements ViewParent, ViewManager {
return true;
}
public void removeView(View child) {
// This internal method is used to share code between removeView and removeViewInLayout.
// Reusing removeView in removeViewInLayout is not possible, because e.g.
// ViewPager overrides removeView to call removeViewInLayout
protected void removeViewInternal(View child) {
if (child.parent != this)
return;
child.parent = null;
@@ -94,6 +97,14 @@ public class ViewGroup extends View implements ViewParent, ViewManager {
}
}
public void removeView(View child) {
removeViewInternal(child);
}
public void removeViewInLayout(View child) {
removeViewInternal(child);
}
public void removeViewAt(int index) {
removeView(children.get(index));
}