Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在聊天适配器中标记特定的聊天气泡_Java_Android_Chat_Android Arrayadapter_Adapter - Fatal编程技术网

Java 如何在聊天适配器中标记特定的聊天气泡

Java 如何在聊天适配器中标记特定的聊天气泡,java,android,chat,android-arrayadapter,adapter,Java,Android,Chat,Android Arrayadapter,Adapter,我有一个群聊,我想标记一条特定的消息(当isProducer为true时发送的消息)。问题是它将所有消息标记在一起。。。 这是我的适配器代码: if(customer_id.equals(message.getUserId())) isMe = true; if(message.getUserId().equals(producer_id)) isProducer = true; if (isMe) {

我有一个群聊,我想标记一条特定的消息(当
isProducer
true
时发送的消息)。问题是它将所有消息标记在一起。。。 这是我的
适配器
代码:

if(customer_id.equals(message.getUserId()))
            isMe = true;
        if(message.getUserId().equals(producer_id))
            isProducer = true;

        if (isMe) {
            holder.imageRight.setVisibility(View.VISIBLE);
            holder.imageLeft.setVisibility(View.GONE);
            holder.body.setGravity(Gravity.CENTER_VERTICAL | Gravity.RIGHT);

        } else {
            holder.imageLeft.setVisibility(View.VISIBLE);
            holder.imageRight.setVisibility(View.GONE);
            holder.body.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT);
        }

        holder.body.setText(message.getBody());
        if (isProducer) {
            holder.body.setTypeface(null, Typeface.BOLD);
        }
Thnx

}

您可以使用R.drawable.leftimg和R.drawable.rightimg应该是ninepatch image

试试这个

isMe = customer_id.equals(message.getUserId()); 
    isProducer = message.getUserId().equals(producer_id);

    if (isMe) {
        holder.imageRight.setVisibility(View.VISIBLE);
        holder.imageLeft.setVisibility(View.GONE);
        holder.body.setGravity(Gravity.CENTER_VERTICAL | Gravity.RIGHT);

    } else {
        holder.imageLeft.setVisibility(View.VISIBLE);
        holder.imageRight.setVisibility(View.GONE);
        holder.body.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT);
    }

    holder.body.setText(message.getBody());
    if (isProducer) {
        holder.body.setTypeface(null, Typeface.BOLD);
    } else {
        holder.body.setTypeface(null, Typeface.NORMAL); // Or anything else
     }

else
添加到
if(isProducer)
并将默认字体设置为否定,抱歉,它不起作用。。。
isMe = customer_id.equals(message.getUserId()); 
    isProducer = message.getUserId().equals(producer_id);

    if (isMe) {
        holder.imageRight.setVisibility(View.VISIBLE);
        holder.imageLeft.setVisibility(View.GONE);
        holder.body.setGravity(Gravity.CENTER_VERTICAL | Gravity.RIGHT);

    } else {
        holder.imageLeft.setVisibility(View.VISIBLE);
        holder.imageRight.setVisibility(View.GONE);
        holder.body.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT);
    }

    holder.body.setText(message.getBody());
    if (isProducer) {
        holder.body.setTypeface(null, Typeface.BOLD);
    } else {
        holder.body.setTypeface(null, Typeface.NORMAL); // Or anything else
     }