首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >小部件中的ImageSpan?

小部件中的ImageSpan?
EN

Stack Overflow用户
提问于 2011-09-30 21:49:03
回答 1查看 1.4K关注 0票数 0

向小部件添加ImageSpan有任何限制吗?这个相同的代码在标准TextView中工作得很好。

代码语言:javascript
复制
SpannableStringBuilder buf = new SpannableStringBuilder("");
if(!TextUtils.isEmpty(message.getMessageBody())) {
    SmileyParser parser = SmileyParser.getInstance();
    buf.append(parser.addSmileySpans(group ? message.getMessageBodyWithoutName() : message.getMessageBody()));
}
view.setTextViewText(R.id.message_body, buf);

谢谢。

编辑1:

代码语言:javascript
复制
public CharSequence addSmileySpans(CharSequence text) {
SpannableStringBuilder builder = new SpannableStringBuilder(text);

Matcher matcher = mPattern.matcher(text);
while (matcher.find()) {
    int resId = mSmileyToRes.get(matcher.group());
    builder.setSpan(new ImageSpan(mContext, resId),
                    matcher.start(), matcher.end(),
                    Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
return builder;

}

EN

回答 1

Stack Overflow用户

发布于 2011-09-30 22:30:03

的笑脸是本地资产。

我将从字面上解释这一点,你的意思是你的图像在assets/中。

我猜主屏幕很难解析你的资产引用。作为一种测试,尝试将图像放在外部存储中,并使用Uri.fromFile()创建Uri。如果这样做有效,尝试将它们作为可提取的资源并使用资源ID。或者,试试资源Uri语法:

代码语言:javascript
复制
Uri.parse("android.resource://your.package.name.goes.here/" + R.raw.myvideo);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7616437

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档