public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType) { if (viewType == Resource.Layout.sender_message_row) { View row = LayoutInflater.From(parent.Context).Inflate(Resource.Layout.sender_message_row, parent, false); BubbleTextView TxtMessage = row.FindViewById <BubbleTextView>(Resource.Id.TxtMessage); //TextView TxtDt = row.FindViewById<TextView>(Resource.Id.TxtMsgTime); TextView TxtName = row.FindViewById <TextView>(Resource.Id.TxtMsgSenderName); ChatsView view = new ChatsView(row) { TxtMessage = TxtMessage, //TxtTimeDate = TxtDt, TxtName = TxtName }; return(view); } else { View row = LayoutInflater.From(parent.Context).Inflate(Resource.Layout.receiver_message_row, parent, false); BubbleTextView TxtMessage = row.FindViewById <BubbleTextView>(Resource.Id.SenderTxtMessage); TextView TxtDt = row.FindViewById <TextView>(Resource.Id.SenderTxtMsgTime); SenderChats view = new SenderChats(row) { SenderTxtMessage = TxtMessage, SenderTxtTimeDate = TxtDt, }; return(view); } }
public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position) { if (holder is ChatsView) { ChatsView chatsView = holder as ChatsView; //chatsView.TxtTimeDate.Text = items[position].DateTime; chatsView.TxtMessage.Text = items[position].Msg; CrossCloudFirestore .Current .Instance .Collection("PEOPLE") .Document(items[position].UserId) .AddSnapshotListener((value, errors) => { if (value.Exists) { var user = value.ToObject <AppUsers>(); chatsView.TxtName.Text = $"{user.Name} {user.Surname}"; } }); //if(items[position].Date_Time.Date ==DateTime.Now.Date) //{ // chatsView.TxtName.Text = $"{items[position].SenderName} 📅 today {items[position].Date_Time.ToString("HH:mm tt")}" ; //} //else //{ // chatsView.TxtName.Text = $"{items[position].SenderName} 📅({items[position].Date_Time.ToString("ddd, dd/MMM/yyyy HH:mm tt")})"; //} } else { SenderChats senderView = holder as SenderChats; senderView.SenderTxtMessage.Text = items[position].Msg; //senderView.SenderTxtTimeDate.Text = items[position].Date_Time.; //if (items[position].Date_Time.Date == DateTime.Now.Date) //{ senderView.SenderTxtTimeDate.Text = $"📅Me"; //} //else //{ // senderView.SenderTxtTimeDate.Text = $"📅{items[position].Date_Time.ToString("ddd, dd/MMM/yyyy HH:mm tt")}"; //} } }