代码如下:
package com.example.pengliu.myapplication; import android.graphics.drawable.Drawable; import android.os.StrictMode; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.text.Html; import android.text.method.LinkMovementMethod; import android.text.method.ScrollingMovementMethod; import android.widget.TextView; import java.io.InputStream; import java.net.URL; public class MainActivity extends AppCompatActivity { private int[] zujianids=new int[]{R.id.text1,R.id.text}; private String[] TMInfos=new String[]{"dfdfdf\r\n<img src=\"http://i.imgur.com/DvpvklR.png\"/>\r\nfdf\r\n<img src=\"https://vimg.xiaoxiakj.com/v/vj/8e76a360124d45c39b3bd57ce50fff43/0.jpg@300w_300h\"/>\r\ndfd" ,"第二道题\r\n<img src=\"http://i.imgur.com/DvpvklR.png\"/>\r\nfdf\r\n<img src=\"https://vimg.xiaoxiakj.com/v/vj/8e76a360124d45c39b3bd57ce50fff43/0.jpg@300w_300h\"/>\r\ndfd"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); struct(); for (int i=0;i<zujianids.length;i++){ TextView tv=findViewById(zujianids[i]); tv.setMovementMethod(ScrollingMovementMethod.getInstance());// 设置可滚动 tv.setMovementMethod(LinkMovementMethod.getInstance());//设置超链接可以打开网页 tv.setText(Html.fromHtml(TMInfos[i], imgGetter, null)); } } //这里面的resource就是fromhtml函数的第一个参数里面的含有的url Html.ImageGetter imgGetter = new Html.ImageGetter() { public Drawable getDrawable(String source) { Drawable drawable = null; InputStream is; try { is = (InputStream) new URL(source).getContent(); drawable = Drawable.createFromStream(is, "src"); is.close(); } catch (Exception e) { e.printStackTrace(); return null; } drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight()); return drawable; } }; public static void struct() { StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() .detectDiskReads().detectDiskWrites().detectNetwork() .penaltyLog().build()); } }