机器人Im消息

This commit is contained in:
18401019693
2022-10-12 10:05:30 +08:00
parent 20916313dd
commit 5b4912815a
4 changed files with 33 additions and 13 deletions

View File

@@ -108,7 +108,7 @@ public class LiveTextRender {
spannableStringBuilder.append(" ");
spannableStringBuilder.append(content);
spannableStringBuilder.setSpan(new ForegroundColorSpan(Color.parseColor(nameColor)),
4, 4+aiName.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
4, 4 + aiName.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
if (!TextUtils.isEmpty(userName) && !userName.contains(",")) {
String mContext = content;
userName = "@" + userName;
@@ -122,13 +122,29 @@ public class LiveTextRender {
mContext = mContext.substring(end + 1, mContext.length());
startIndex = startIndex + end + 1;
}
} else {
String[] userNames = userName.split(",");
int startIndex = 6 + aiName.length();
String mContext = content;
for (String name : userNames) {
name = "@" + name;
while (mContext.contains(name)&&!TextUtils.isEmpty(mContext)) {
int index = mContext.indexOf(name);
int end = index + name.length();
int endIndex = startIndex + name.length();
spannableStringBuilder.setSpan(new ForegroundColorSpan(Color.parseColor("#fffe9b")),
startIndex, endIndex, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
mContext = mContext.substring(end + 1, mContext.length());
startIndex = startIndex + end + 1;
}
}
drawable.setBounds(0, 0, DpUtil.dp2px(39), DpUtil.dp2px(15));
//用这个drawable对象代替字符串easy
ImageSpan span = new ImageSpan(drawable, ImageSpan.ALIGN_BASELINE);
spannableStringBuilder.setSpan(span, 0, 3, Spannable.SPAN_EXCLUSIVE_INCLUSIVE);
textView.setText(spannableStringBuilder);
}
drawable.setBounds(0, 0, DpUtil.dp2px(39), DpUtil.dp2px(15));
//用这个drawable对象代替字符串easy
ImageSpan span = new ImageSpan(drawable, ImageSpan.ALIGN_BASELINE);
spannableStringBuilder.setSpan(span, 0, 3, Spannable.SPAN_EXCLUSIVE_INCLUSIVE);
textView.setText(spannableStringBuilder);
}
@Override

View File

@@ -35,6 +35,7 @@ public class CustomViewHolder implements BannerViewHolder<BannerBean> {
TextView numberOfPeopleAssisted = contextView.findViewById(R.id.number_of_people_assisted);
TextView targetAssist = contextView.findViewById(R.id.target_assist_num);
TextView currentAssist = contextView.findViewById(R.id.current_assist_num);
TextView title = contextView.findViewById(R.id.title);
if (data.isStart()) {
startContext.setVisibility(View.VISIBLE);
Glide.with(context).load(R.mipmap.start_level).into(bannerBack);
@@ -60,6 +61,7 @@ public class CustomViewHolder implements BannerViewHolder<BannerBean> {
numberOfPeopleAssisted.setText(TextUtils.isEmpty(data.getModel().getTaskName2()) ? context.getString(R.string.total_star_value) : data.getModel().getTaskName2());
targetAssist.setText("/" + targetAssistNum);
currentAssist.setText(String.valueOf(currentAssistNum));
title.setText(String.format(context.getString(R.string.star_change),data.getModel().getTaskNum()));
} else {
String imagerUrl = data.getImageUrl().replace("qny", "downs");
Glide.with(context).load(imagerUrl).into(bannerBack);