private void View_Click(object sender, EventArgs e) { GenericViewHolder holder = (GenericViewHolder)parentAdapter.recyclerView.GetChildViewHolder(((View)sender)); int clickedPosition = holder.AdapterPosition; parentAdapter.OnItemSelected(clickedPosition); }
protected override void OnUpdateView(GenericViewHolder holder, T datum) { holder.GetView <TextView>("Avi").Background.SetColorFilter(ColorManager.GetColor(), PorterDuff.Mode.SrcIn); holder.GetView <TextView>("Avi").Text = datum.GetAviText(); holder.GetView <TextView>("Name").Text = datum.GetPrimaryText().Capitalize(); holder.GetView <TextView>("Description").Text = datum.GetSecondaryText(); }
public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType) { View layout = LayoutInflater.From(parent.Context).Inflate(layoutId, parent, false); GenericViewHolder genericViewHolder = new GenericViewHolder(layout); OnLookupViewItems(layout, genericViewHolder); return(genericViewHolder); }
protected override void OnLookupViewItems(View layout, GenericViewHolder viewHolder) { var PrimaryLbl = layout.FindViewById <TextView>(Resource.Id.primaryTextLbl); var SecondaryLbl = layout.FindViewById <TextView>(Resource.Id.secondaryTextLbl); var DeleteBtn = layout.FindViewById <ImageView>(Resource.Id.deleteBtn); viewHolder.AddView("PrimaryLbl", PrimaryLbl); viewHolder.AddView("SecondaryLbl", SecondaryLbl); DeleteBtn.Click += delegate { OnDeleteClicked?.Invoke(viewHolder.AdapterPosition); }; if (showDeleteBtn) { DeleteBtn.Visibility = ViewStates.Visible; } }
protected override void OnUpdateView(GenericViewHolder holder, string datum) { holder.GetView <TextView>("Label").Text = datum; holder.GetView <ImageView>("RemoveBtn").Click += delegate { OnChipRemove?.Invoke(holder.AdapterPosition, datum); }; if (hideRemoveChipBtn) { holder.GetView <ImageView>("RemoveBtn").Visibility = ViewStates.Gone; holder.GetView <TextView>("Label").SetPadding(16, 0, 16, 0); } if (UsesRandomBackgroundColor) { holder.GetView <TextView>("Label").Background.SetColorFilter(ColorManager.GetColor(), PorterDuff.Mode.SrcIn); } }
protected override void OnLookupViewItems(View layout, GenericViewHolder viewHolder) { var Avi = layout.FindViewById <TextView>(Resource.Id.Avi); var Name = layout.FindViewById <TextView>(Resource.Id.Name); var Description = layout.FindViewById <TextView>(Resource.Id.Description); var MoreVert = layout.FindViewById <ImageView>(Resource.Id.moreVert); viewHolder.AddView("Avi", Avi); viewHolder.AddView("Name", Name); viewHolder.AddView("Description", Description); viewHolder.AddView("Root", layout.FindViewById(Resource.Id.root)); if (showMoreVert) { viewHolder.AddView("MoreVert", MoreVert); MoreVert.Click += (s, e) => OnMoreClicked?.Invoke(viewHolder); } else { MoreVert.Visibility = ViewStates.Gone; } }
protected abstract void OnUpdateView(GenericViewHolder holder, T datum);
protected abstract void OnLookupViewItems(View layout, GenericViewHolder viewHolder);
public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position) { GenericViewHolder genericViewHolder = (GenericViewHolder)holder; OnUpdateView(genericViewHolder, items[position]); }
protected override void OnUpdateView(GenericViewHolder holder, T datum) { holder.GetView <TextView>("PrimaryLbl").Text = datum.GetPrimaryText(); holder.GetView <TextView>("SecondaryLbl").Text = datum.GetSecondaryText(); }
protected override void OnLookupViewItems(View layout, GenericViewHolder viewHolder) { viewHolder.AddView("Label", layout.FindViewById <TextView>(Resource.Id.chipLabel)); viewHolder.AddView("RemoveBtn", layout.FindViewById <ImageView>(Resource.Id.chipRemoveBtn)); }
protected override void OnLookupViewItems(View layout, GenericViewHolder viewHolder) { var PrimaryLabel = layout.FindViewById <TextView>(Resource.Id.primaryLbl); viewHolder.AddView("Primary", PrimaryLabel); }