+ this.vHeader = itemView.findViewById(R.id.last_update_container);
+ this.tvLastUpdate = itemView.findViewById(R.id.last_update_text);
+ }
+ void setLastUpdateText(String text) {
+ tvLastUpdate.setText(text);
+ }
+ void setType(TransactionListItem.Type newType) {
+ if (newType == lastType)
+ return;
+
+ switch (newType) {
+ case TRANSACTION:
+ vHeader.setVisibility(View.GONE);
+ vTransaction.setVisibility(View.VISIBLE);
+ vDelimiter.setVisibility(View.GONE);
+ break;
+ case DELIMITER:
+ vHeader.setVisibility(View.GONE);
+ vTransaction.setVisibility(View.GONE);
+ vDelimiter.setVisibility(View.VISIBLE);
+ break;
+ case HEADER:
+ vHeader.setVisibility(View.VISIBLE);
+ vTransaction.setVisibility(View.GONE);
+ vDelimiter.setVisibility(View.GONE);
+ break;
+ default:
+ throw new IllegalStateException("Unexpected value: " + newType);
+ }
+
+ lastType = newType;