public async Task ToggleCompositeType(CompositeTypeItem entry) { CompositeType compositeTypes = this.GetCompositeTypes(); if (compositeTypes.HasFlag(entry.CompositeType)) { compositeTypes &= ~entry.CompositeType; } else { compositeTypes |= entry.CompositeType; } await this.settingsManager.SetEnabledCompositeTypes(compositeTypes); }
public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position) { if (this.types.Count <= position) { return; } CompositeTypeItem currentEntry = this.types[position]; var viewHolder = holder as TwoTextsAndIconViewHolder; viewHolder.SetFirstTextView(currentEntry.DisplayNameResourceId); viewHolder.SetIcon(currentEntry.Enabled ? Resource.Drawable.ic_check : 0); viewHolder.ItemView.SetOnClickListener(new ItemViewOnClickListener(this.onClickCallback, currentEntry)); }
public ItemViewOnClickListener(Action <CompositeTypeItem> onClickCallback, CompositeTypeItem typeItem) { this.onClickCallback = onClickCallback; this.currentItem = typeItem; }