我有一个列表适配器来显示我的社交网络内容,我需要在文本中放入img标签,我已经尝试使用Html.fromhtml并且它正在格式化文本而不是显示img它显示为灰色方。
我怎样才能实现这一目标?我读过有关ImageGetter的内容,但我仍然没有说清楚。
由于
答案 0 :(得分:8)
您可以使用Image
TextView
和Html
在img tag
中绘制Html.ImageGetter
。但请确保您的图片在resource drawable
文件夹
这是一个示例,图像将从资源加载。
String htmlText = "Hai <img src=\"ic_launcher\"> Hello";
textView.setText(Html.fromHtml(htmlText, new Html.ImageGetter() {
@Override
public Drawable getDrawable(String source) {
int resourceId = getResources().getIdentifier(source, "drawable",getPackageName());
Drawable drawable = getResources().getDrawable(resourceId);
drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
return drawable;
}
}, null));
答案 1 :(得分:2)
String mIsi = (String) bundle.get("isi");
isi.setText(Html.fromHtml(mIsi, new Html.ImageGetter() {
@Override
public Drawable getDrawable(final String source) {
Picasso.get()
.load(source).into(imageView, new Callback() {
@Override
public void onSuccess() {
drawable = imageView.getDrawable();
drawable.setBounds(0, 0,
drawable.getIntrinsicWidth(),
drawable.getIntrinsicHeight());
}
@Override
public void onError(Exception e) {
Log.v("test pic","err"+e.getMessage());
}
});
imageView.setVisibility(View.GONE);
return drawable;
}
}, null));