@Override public View getView(int position, View convertView, ViewGroup parent) { View row = convertView; RowHolder holder = null; if (row == null) { LayoutInflater inflater = ((Activity) activity).getLayoutInflater(); row = inflater.inflate(layoutResourceId, parent, false); holder = new RowHolder(); holder.imgIcon = (ImageView) row.findViewById(R.id.imgIcon); holder.txtTitle = (TextView) row.findViewById(R.id.txtTitle); holder.imgIcon.setOnClickListener( new BookmarkListener(row, data, position, activity, this.listfragment)); row.setTag(holder); } else { holder = (RowHolder) row.getTag(); } ParsedRow rowItem = data.get(position); holder.txtTitle.setText(rowItem.getTitle()); holder.imgIcon.setImageResource(rowItem.getIcon()); return row; }
public void encodeRow(ResponseWriter writer, FacesContext facesContext, RowHolderBase holder) throws IOException { RowHolder rowHolder = (RowHolder) holder; Row row = rowHolder.getRow(); putRowStylesIntoContext(facesContext, rowHolder); rowHolder.setRowStart(true); Iterator<UIComponent> components = row.columns(); if (rowHolder.isUpdatePartial()) { partialStart( facesContext, ((AbstractCollapsibleSubTable) row).getRelativeClientId(facesContext) + ":b"); } int columnNumber = 0; while (components.hasNext()) { UIComponent component = components.next(); if (component.isRendered()) { if (component instanceof UIColumn) { component.getAttributes().put(COLUMN_CLASS, getColumnClass(rowHolder, columnNumber)); encodeColumn(facesContext, writer, (UIColumn) component, rowHolder); columnNumber++; } else if (component instanceof AbstractCollapsibleSubTable) { if (component.isRendered()) { encodeRowEnd(writer); } component.encodeAll(facesContext); rowHolder.setRowStart(true); } } } encodeRowEnd(writer); if (rowHolder.isUpdatePartial()) { partialEnd(facesContext); } }