private void RaiseOnInfiniteScrollWhenItemIsLastInList(ConversationMessage currentItem, ConversationMessageViewHolder viewHolder) { if (this.Messages.IndexOf(currentItem) == (this.Messages.Count - 1) && !InfiniteScrollDisabled) { this.infiniteScrollListener.OnInfiniteScroll(); } }
private static void SetLayotParameters(ConversationMessage currentItem, ConversationMessageViewHolder vh) { RelativeLayout.LayoutParams parameters = new RelativeLayout.LayoutParams(LinearLayout.LayoutParams.WrapContent, LinearLayout.LayoutParams.WrapContent); if (currentItem.UserWasSender) { parameters.AddRule(LayoutRules.AlignParentLeft); parameters.SetMargins(5, 5, 30, 5); vh.MessageLayout.Background = ContextCompat.GetDrawable(Application.Context, Resource.Drawable.conversation_user_message_background_border); vh.MessageHeader.SetTextColor(Color.Black); vh.MessageContent.SetTextColor(Color.Black); } else { parameters.AddRule(LayoutRules.AlignParentRight); parameters.SetMargins(30, 5, 5, 5); vh.MessageLayout.Background = ContextCompat.GetDrawable(Application.Context, Resource.Drawable.conversation_sender_message_background_border); vh.MessageHeader.SetTextColor(Color.White); vh.MessageContent.SetTextColor(Color.White); } vh.MessageLayout.LayoutParameters = parameters; }
public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType) { View itemView = LayoutInflater.From(parent.Context).Inflate(Resource.Layout.ConversationMessageRowView, parent, false); ConversationMessageViewHolder vh = new ConversationMessageViewHolder(itemView); return vh; }