viewHolder.itemView.setId(hashCode()); viewHolder.itemView.setSelected(isSelected()); viewHolder.itemView.setEnabled(isEnabled()); int selectedColor = getSelectedColor(ctx); int color = getColor(ctx); ColorStateList selectedTextColor = getTextColorStateList(color, getSelectedTextColor(ctx)); int iconColor = getIconColor(ctx); int selectedIconColor = getSelectedIconColor(ctx); themeDrawerItem(ctx, viewHolder.view, selectedColor, isSelectedBackgroundAnimated()); StringHolder.applyTo(this.getName(), viewHolder.name); StringHolder.applyToOrHide(this.getDescription(), viewHolder.description); ColorHolder.applyToOr(getDescriptionTextColor(), viewHolder.description, selectedTextColor); if (getTypeface() != null) { viewHolder.name.setTypeface(getTypeface()); viewHolder.description.setTypeface(getTypeface()); Drawable icon = ImageHolder.decideIcon(getIcon(), ctx, iconColor, isIconTinted(), 1); if (icon != null) { Drawable selectedIcon = ImageHolder.decideIcon(getSelectedIcon(), ctx, selectedIconColor, isIconTinted(), 1);
@Override public void bindView(ViewHolder viewHolder, List payloads) { super.bindView(viewHolder, payloads); Context ctx = viewHolder.itemView.getContext(); //bind the basic view parts bindViewHelper(viewHolder); //set the text for the badge or hide boolean badgeVisible = StringHolder.applyToOrHide(mBadge, viewHolder.badge); //style the badge if it is visible if (badgeVisible) { mBadgeStyle.style(viewHolder.badge, getTextColorStateList(getColor(ctx), getSelectedTextColor(ctx))); viewHolder.badgeContainer.setVisibility(View.VISIBLE); } else { viewHolder.badgeContainer.setVisibility(View.GONE); } //define the typeface for our textViews if (getTypeface() != null) { viewHolder.badge.setTypeface(getTypeface()); } //call the onPostBindView method to trigger post bind view actions (like the listener to modify the item if required) onPostBindView(this, viewHolder.itemView); }
@Override public void bindView(ViewHolder viewHolder, List payloads) { super.bindView(viewHolder, payloads); Context ctx = viewHolder.itemView.getContext(); //bind the basic view parts bindViewHelper(viewHolder); //make sure all animations are stopped if (viewHolder.arrow.getDrawable() instanceof IconicsDrawable) { ((IconicsDrawable) viewHolder.arrow.getDrawable()).color(this.arrowColor != null ? this.arrowColor.color(ctx) : getIconColor(ctx)); } viewHolder.arrow.clearAnimation(); if (!isExpanded()) { viewHolder.arrow.setRotation(this.arrowRotationAngleStart); } else { viewHolder.arrow.setRotation(this.arrowRotationAngleEnd); } //call the onPostBindView method to trigger post bind view actions (like the listener to modify the item if required) onPostBindView(this, viewHolder.itemView); }
@Override public void bindView(ViewHolder viewHolder, List payloads) { super.bindView(viewHolder, payloads); Context ctx = viewHolder.itemView.getContext(); //bind the basic view parts bindViewHelper(viewHolder); //handle menu click viewHolder.menu.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { PopupMenu popup = new PopupMenu(view.getContext(), view); MenuInflater inflater = popup.getMenuInflater(); inflater.inflate(mMenu, popup.getMenu()); popup.setOnMenuItemClickListener(mOnMenuItemClickListener); popup.setOnDismissListener(mOnDismissListener); popup.show(); } }); //handle image viewHolder.menu.setImageDrawable(new IconicsDrawable(ctx, GoogleMaterial.Icon.gmd_more_vert).sizeDp(12).color(getIconColor(ctx))); //call the onPostBindView method to trigger post bind view actions (like the listener to modify the item if required) onPostBindView(this, viewHolder.itemView); }
@Override public void bindView(ExpandableBadgeDrawerItem.ViewHolder viewHolder, List payloads) { super.bindView(viewHolder, payloads);
@Override public void bindView(final ViewHolder viewHolder, List payloads) { super.bindView(viewHolder, payloads); //bind the basic view parts bindViewHelper(viewHolder); //handle the toggle viewHolder.toggle.setOnCheckedChangeListener(null); viewHolder.toggle.setChecked(checked); viewHolder.toggle.setOnCheckedChangeListener(checkedChangeListener); viewHolder.toggle.setEnabled(toggleEnabled); //add a onDrawerItemClickListener here to be able to check / uncheck if the drawerItem can't be selected withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() { @Override public boolean onItemClick(View view, int position, IDrawerItem drawerItem) { if (!isSelectable()) { checked = !checked; viewHolder.toggle.setChecked(checked); } return false; } }); //call the onPostBindView method to trigger post bind view actions (like the listener to modify the item if required) onPostBindView(this, viewHolder.itemView); }
@Override public void bindView(final ViewHolder viewHolder, List payloads) { super.bindView(viewHolder, payloads); //bind the basic view parts bindViewHelper(viewHolder); //handle the switch viewHolder.switchView.setOnCheckedChangeListener(null); viewHolder.switchView.setChecked(checked); viewHolder.switchView.setOnCheckedChangeListener(checkedChangeListener); viewHolder.switchView.setEnabled(switchEnabled); //add a onDrawerItemClickListener here to be able to check / uncheck if the drawerItem can't be selected withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() { @Override public boolean onItemClick(View view, int position, IDrawerItem drawerItem) { if (!isSelectable()) { checked = !checked; viewHolder.switchView.setChecked(checked); } return false; } }); //call the onPostBindView method to trigger post bind view actions (like the listener to modify the item if required) onPostBindView(this, viewHolder.itemView); }