textView 解析包含图片的html内容
来源:互联网 发布:淘宝购买账号安全吗 编辑:程序博客网 时间:2024/06/05 08:16
public class MainActivity extends Activity { private Handler handler; private String html; private TextView tv; private ProgressBar bar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 网上找的html数据 html = "<html><head><title>TextView使用HTML</title></head><body><p><strong>强调</strong></p><p><em>斜体</em></p>" + "<p><a href=\"http://www.csdn.net"><span style="font-family: Arial, Helvetica, sans-serif;">找的html数据</span></a>学习</p><p><font color=\"#aabb00\">颜色1" + "</p><p><font color=\"#00bbaa\">颜色2</p><h1>标题1</h1><h3>标题2</h3><h6>标题3</h6><p>大于>小于<</p><p>" + "下面是网络图片</p><img src=\"http://my.csdn.net/uploads/201207/19/1342690866_6478.png\"/></body>" + "下面是网络图片</p><img src=\"http://my.csdn.net/uploads/201207/19/1342690866_6478.png"/></body></html>"; tv = (TextView) this.findViewById(R.id.id); bar = (ProgressBar) this.findViewById(R.id.id_bar); tv.setMovementMethod(ScrollingMovementMethod.getInstance());// 滚动 handler = new Handler() { @Override public void handleMessage(Message msg) { // TODO Auto-generated method stub if (msg.what == 0x101) { bar.setVisibility(View.GONE); tv.setText((CharSequence) msg.obj); } super.handleMessage(msg); } }; // 因为从网上下载图片是耗时操作 所以要开启新线程 Thread t = new Thread(new Runnable() { Message msg = Message.obtain(); @Override public void run() { // TODO Auto-generated method stub bar.setVisibility(View.VISIBLE); /** * 要实现图片的显示需要使用Html.fromHtml的一个重构方法:public static Spanned * fromHtml (String source, Html.ImageGetterimageGetter, * Html.TagHandler * tagHandler)其中Html.ImageGetter是一个接口,我们要实现此接口,在它的getDrawable * (String source)方法中返回图片的Drawable对象才可以。 */ ImageGetter imageGetter = new ImageGetter() { @Override public Drawable getDrawable(String source) { // TODO Auto-generated method stub URL url; Drawable drawable = null; try { url = new URL(source); drawable = Drawable.createFromStream( url.openStream(), null); drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight()); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return drawable; } }; CharSequence test = Html.fromHtml(html, imageGetter, null); msg.what = 0x101; msg.obj = test; handler.sendMessage(msg); } }); t.start(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; }}
0 0
- textView 解析包含图片的html内容
- 重写ImageGetter,让TextView异步加载包含图片的html内容
- TextView显示带图片的html内容
- Android TextView解析HTML内容
- 使用Textview显示包含图片的html代码
- 打包下载html中的内容及包含的图片
- android教程之textview解析带图片的html示例
- android教程之textview解析带图片的html
- PHP echo输出的内容包含html ,但是html不解析的不完全解决办法
- Android EditText加载HTML内容(内容包含网络图片)
- 使用Jsoup解析Html == TextView显示html图片的方法
- android TextView加载html内容并加载图片
- android TextView加载html内容并加载图片
- TextView的text内容包含双引号的问题
- HTML文档可以包含的内容
- Android学习札记47:TextView显示Html类解析的网页和图片及自定义标签
- TextView显示Html类解析的网页和图片及自定义标签
- TextView显示Html类解析的网页和图片及自定义标签
- json数据解析
- weblogic cluster load balance
- 归档日志损坏,splex无法读取归档应用日志
- HttpClient发送GET Post例子4.2.1版本
- 堆
- textView 解析包含图片的html内容
- jQuery load()方法
- 记录一次远程数据导出导入
- XMLHTTPRequest的方法和属性介绍
- C++指针直接调用类成员函数探讨
- HashMap中keySet()以及values()方法的使用
- 【Cocos2d-x】源码分析之 2d/ui/Widget
- UVa OJ 127 - "Accordian" Patience (“手风琴”纸牌)
- reactor设计模式