Чат работает, но делает некоторые странные вещи - PullRequest
1 голос
/ 23 марта 2019

Я реализовал чат, в котором сообщения текущего пользователя находятся справа, а сообщения других пользователей - слева. Все работает нормально, но если я пишу более + - 10 сообщений пользователю, некоторые пузырьки сообщений изменяются случайным образом в сторону (в основном слева направо). Если я закрою чат-активность и вернусь назад, они вернутся в исходное положение, и если я снова напишу сообщение, они снова начнут менять свою сторону.

Вот моя функция от адаптера, где я решаю, какое сообщение оставить слева, а какое справа. У меня есть chatList, где все сообщения сохранены, а getCurrentUser - логическое значение, в котором он возвращает значение true, если сообщение отправлено текущим пользователем, и значение false, если нет.

Спасибо за любой ответ.

    public void onBindViewHolder(ChatViewHolders holder, int position) {

        holder.mMessage.setText(chatList.get(position).getMessage());

        if(chatList.get(position).getCurrentUser()){
            holder.mMessage.setBackgroundResource(R.drawable.button_bg_round);
            holder.mMessage.setGravity(Gravity.END);
            holder.mContainer.setGravity(Gravity.END);
            holder.mMessage.setTextColor(Color.parseColor("#ffffff"));
        }else {
            holder.mMessage.setGravity(Gravity.START);
            holder.mMessage.setTextColor(Color.parseColor("#000000"));
        }

            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...