介绍
这篇文章将为大家详细讲解有关Android开发中怎么实现一个长按将文章生成图片的功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
<强>长按菜单实现强>
WebView可以如下实现:
mWebView.setOnCreateContextMenuListener (new View.OnCreateContextMenuListener (), { ,,,,@Override ,,,,,public void onCreateContextMenu (ContextMenu 菜单,View v, ContextMenu.ContextMenuInfo menuInfo), { ,,,,,,,genImg.setVisibility (View.VISIBLE); ,,,,,,,T.showSToast (mContext,,“再次点击文章可隐藏图片分享“); ,,,,,} ,,,}); ,,,//,点击隐藏底部按钮 ,,,mWebView.setOnTouchListener (new View.OnTouchListener (), { ,,,,@Override ,,,,,public boolean ondraw (View v, MotionEvent 事件),{ ,,,,,,,switch (event.getAction ()), { ,,,,,,,,,case MotionEvent.ACTION_DOWN: ,,,,,,,,,,,lastTime =, SystemClock.uptimeMillis (); ,,,,,,,,,,,休息; ,,,,,,,,,case MotionEvent.ACTION_UP: ,,,,,,,,,,,if (SystemClock.uptimeMillis(),安康;lastTime & lt;, 300), { ,,,,,,,,,,,,,genImg.setVisibility (View.GONE); ,,,,,,,,,,,} ,,,,,,,,,,,休息; ,,,,,,,} ,,,,,,,return 假; ,,,,,} ,,,});
这里通过监听WebView的快捷菜单监听何时显示底部按钮;同时在ondraw方法中隐藏底部按钮。
genImg.setOnClickListener (new View.OnClickListener (), { ,,,,@Override ,,,,,public void onClick (View v), { ,,,,,,,genImg.setVisibility (View.INVISIBLE); ,,,,,,,Intent Intent =, new 意图(GenScreenShotActivity.class FakeJianShuActivity.this也); ,,,,,,,intent.putExtra (“data",, mHtmlBean); ,,,,,,,startActivity(意图); ,,,,,} ,,,});
点击底部的按钮就会跳转到生成长图的界面,同时将之前获取到的HTMLBean对象传递过去。
<强>长图效果实现强>
这里首先说一下实现思路(思路来源于此)。
?首先通过WebView加载一个本地的Html页面,这个页面包含一些固定,定义了一些标签。然后根据传递过来的mHtmlBean对象中的信息,通过执行JavaScript动态的替换静态Html页面中的内容,
?关于黑白两种风格的实现,同样是WebView执行Js,动态替换HTML中CSS样式,修改WebView的背景色呈现出两种不同的UI效果。
?通过WebView的capturePicture和帆布可以生成出当前WebView的位图对象,有了这个位图就可以图片保存的功能了。
好了、下面就通过代码分别实现上述步骤。
Html页面
& lt; html> & lt; head> & lt;才能meta charset=皍tf-8"/比; & lt;/head> & lt; body> & lt; img  src=https://www.yisu.com/zixun/癿ark.png”宽度==?0 px”“13 px”高度/> <文章id="内容"> >条