public override void GetView(int postion, ChatViewHolder holder, View view, TodoItem item) { string checkImage = "image_check_selected"; Color taskColor = ViewBuilder.ColorFromARGB(AppController.Colors.AshGray); if (!item.IsComplete) { checkImage = "image_check_empty_green"; DateTime dueDate = item.CreationDate.GetValueOrDefault().Date.AddDays(item.WillDoIn); int dueDays = (dueDate - DateTime.Now.Date).Days; taskColor = ViewBuilder.ColorFromARGB(AppController.Colors.Green); if (dueDays < 2) { checkImage = "image_check_empty_red"; taskColor = ViewBuilder.ColorFromARGB(AppController.Colors.Red); } else if (dueDays < 4) { checkImage = "image_check_empty_orange"; taskColor = ViewBuilder.ColorFromARGB(AppController.Colors.Orange); } } holder.CheckButton.SetImageResource(checkImage); holder.TitleLabel.Text = item.Title; holder.TitleLabel.SetTextColor(taskColor); }
public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position) { ChatViewHolder vh = holder as ChatViewHolder; vh.messageText.Text = messagesList[position]["Comment"].ToString(); vh.messageTime.Text = $"{((DateTime)messagesList[position]["Time"]).ToShortDateString()} {((DateTime)messagesList[position]["Time"]).ToShortTimeString()}"; var avaparam = vh.messageAva.LayoutParameters as RelativeLayout.LayoutParams; var bubleparam = vh.messageBubble.LayoutParameters as RelativeLayout.LayoutParams; var messageparam = vh.messageTime.LayoutParameters as RelativeLayout.LayoutParams; if ((string)messagesList[position]["Initiator"] == "Станция") { avaparam.AddRule(LayoutRules.AlignParentLeft, vh.messageLayout.Id); bubleparam.AddRule(LayoutRules.RightOf, vh.messageAva.Id); messageparam.AddRule(LayoutRules.RightOf, vh.messageAva.Id); vh.messageBubble.Background = ContextCompat.GetDrawable(vh.ItemView.Context, Resource.Drawable.IncomingMessage); } else { avaparam.AddRule(LayoutRules.AlignParentRight, vh.messageLayout.Id); bubleparam.AddRule(LayoutRules.LeftOf, vh.messageAva.Id); messageparam.AddRule(LayoutRules.LeftOf, vh.messageAva.Id); vh.messageBubble.Background = ContextCompat.GetDrawable(vh.ItemView.Context, Resource.Drawable.OutgoingMessage); } vh.messageAva.LayoutParameters = avaparam; vh.messageBubble.LayoutParameters = bubleparam; vh.messageTime.LayoutParameters = messageparam; //vh.messageAva.SetImageDrawable(roundDrawable); }
public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType) { View itemView = LayoutInflater.From(parent.Context).Inflate(Resource.Layout.view_chatmessage, parent, false); ChatViewHolder vh = new ChatViewHolder(itemView); return(vh); }
public override void GetView(int postion, ChatViewHolder holder, View view, Model.Message item) { bool isYours = _currentUser == item.Sender; bool isSending = item.PostDate == null; bool isSent = item.PostDate.GetValueOrDefault() != DateTime.MinValue; if (!isYours && !_colors.ContainsKey(item.Sender)) { _colors.Add(item.Sender, _palette[_rnd.Next(_palette.Count)]); } ((RelativeLayout)view).SetGravity(isYours ? GravityFlags.Right : GravityFlags.Left); holder.CalloutLayout.Background.SetColorFilter( ViewBuilder.ColorFromARGB(isYours ? AppController.Colors.PapayaWhip : _colors[item.Sender]), PorterDuff.Mode.SrcIn); holder.CalloutLayout.Alpha = isSent ? 1 : .35f; holder.SenderLabel.Text = String.Concat(isYours ? "YOU" : item.Sender.Split('@')[0], " "); holder.SenderLabel.SetTextColor(ViewBuilder.ColorFromARGB(isYours ? AppController.Colors.Jet : AppController.Colors.White)); holder.MessageLabel.Text = String.Concat(item.Content, " "); holder.MessageLabel.SetTextColor(ViewBuilder.ColorFromARGB(isYours ? AppController.Colors.Jet : AppController.Colors.White)); holder.DateLabel.Text = isSent ? String.Format(" sent @ {0:G}", item.PostDate) : String.Empty; holder.DateLabel.SetTextColor(ViewBuilder.ColorFromARGB(isYours ? AppController.Colors.Jet : AppController.Colors.White)); }
public override void GetView(int postion, ChatViewHolder holder, View view, Message item) { bool isYours = String.IsNullOrWhiteSpace(item.Sender); bool isSending = item.SendDate == DateTime.MinValue; bool isSent = item.SendDate != DateTime.MinValue && item.SendDate != DateTime.MaxValue; bool isLost = item.SendDate == DateTime.MaxValue; if (!isYours && !_colors.ContainsKey(item.Sender)) { _colors.Add(item.Sender, _palette[_rnd.Next(_palette.Count)]); } ((RelativeLayout)view).SetGravity(isYours ? GravityFlags.Right : GravityFlags.Left); holder.SenderLabel.Text = String.Concat(isYours ? "YOU" : item.Sender.Split('@')[0], " "); holder.CalloutLayout.Background.SetColorFilter( ViewBuilder.ColorFromARGB(isYours ? AppController.Colors.PictonBlue : _colors[item.Sender]), PorterDuff.Mode.SrcIn); holder.CalloutLayout.Alpha = isSent ? 1 : .35f; holder.MessageLabel.Text = String.Concat(item.Content, " "); holder.DateLabel.Text = isSent ? String.Format(" sent @ {0:G}", item.SendDate) : String.Empty; }
// Fill in the contents of the photo card (invoked by the layout manager): public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position) { ChatViewHolder vh = holder as ChatViewHolder; // Set the ImageView and TextView in this ViewHolder's CardView // from this position in the photo album: vh.ChatName.Text = this.chats[position].Name; }
public override void GetView(int postion, ChatViewHolder holder, View view, Gimmick item) { AppController.Images.SetImageForView( new Uri(item.ImageUrl), "image_gear", holder.ThumbImage); holder.NameLabel.Text = item.Name; holder.OwnerLabel.Text = item.Owner; }
public override void GetView(int postion, ChatViewHolder holder, View view, Issue item) { string[] typeImages = new[] { "image_gear", "image_issue_crash", "image_issue_blocking", "image_issue_nblocking" }; holder.TypeImage.SetImageResource(typeImages[(int)item.Type]); holder.CodeLabel.Text = String.Format("code: #{0}", item.Code); holder.TitleLabel.Text = item.Title; holder.SenderLabel.Text = item.Sender.Split('@')[0]; holder.DescriptionLabel.Text = item.Description; holder.CreatedDateLabel.Text = item.CreationDate?.ToString("d"); holder.StatusDescriptionLabel.Text = item.Status.ToString(); }
// Create a new photo CardView (invoked by the layout manager): public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType) { // Inflate the CardView for the photo: View itemView = LayoutInflater.From(parent.Context). Inflate(Resource.Layout.GroupCardView, parent, false); // Create a ViewHolder to find and hold these view references, and // register OnClick with the view holder: ChatViewHolder vh = new ChatViewHolder(itemView, OnClick); return(vh); }