@Override public void removeView(View view) { super.removeView(view); final int typeView = (Integer) view.getTag(R.id.tag_type_view); if (typeView != TableAdapter.IGNORE_ITEM_VIEW_TYPE) { recycler.addRecycledView(view, typeView); } }
@Override protected boolean drawChild(Canvas canvas, View child, long drawingTime) { final boolean ret; final Integer row = (Integer) child.getTag(R.id.tag_row); final Integer column = (Integer) child.getTag(R.id.tag_column); // row == null => Shadow view if (row == null || (row == -1 && column == -1)) { ret = super.drawChild(canvas, child, drawingTime); } else { canvas.save(); if (row == -1) { canvas.clipRect(widths[0], 0, canvas.getWidth(), canvas.getHeight()); } else if (column == -1) { canvas.clipRect(0, heights[0], canvas.getWidth(), canvas.getHeight()); } else { canvas.clipRect(widths[0], heights[0], canvas.getWidth(), canvas.getHeight()); } ret = super.drawChild(canvas, child, drawingTime); canvas.restore(); } return ret; }