网上也没啥合适的,就看到这个还不错。
Android有时候会有需求是文字周围有图片,或者文字其中一部分改样式。
1,如果只是改变颜色,字体的简单需求,直接用Android自带的就可以改。SpannableString
SpannableString 可以添加图片,添加下划线等操作。还是不错的
2,如果是图片环绕可以用网上简单的图文混排的控件,都可以实现。只是算了高度而已
3,如果是环绕一个复杂的布局,则建议用 MixtureTextView 这个是GitHub上面的一个控件。但是写的不完全,部分textview的功能没有,但是满足了各种复杂需求。我在这个view的基础上加了一些方法,使用起来更方便,需要的私信我。哈哈哈毕竟是用到了公司的,不方便直接贴出来。
4,这个比较推荐,用html的(string,imageloder,null)的方法来图文混排。网上有很多类似的,第一个参数是内容,第二个参数是加载器。第三个参数是Spanna的样式。我这里推荐一个我自己的,网上的很多,但是不一定适合你的项目。
textview.setText(Html.fromHtml(string, new Html.ImageGetter() { @Override public Drawable getDrawable(String source) { Drawable draw = null; InputStream open = null; try { open = KaoyanBase.this.getAssets().open(source); draw = Drawable.createFromStream(open, null); draw.setBounds(0, 0, draw.getIntrinsicWidth(),draw.getIntrinsicHeight() ); } catch (Exception e) { e.printStackTrace(); } finally { try { if (open != null) { open.close(); } } catch (IOException e) { e.printStackTrace(); } } return draw; } }, null));
这就是很简单的实现,你可以吧Html.ImageGetter提出来,自己写一个类。然后实现网络加载。也可以添加点击效果。都是简简单单啦。不懂得直接问我