学习
实践
活动
专区
工具
TVP
写文章

Android实现长图功能

本文实例为大家分享了Android实现长图功能展示的具体代码,供大家参考,具体内容如下 Demo在GitHub的地址:ScreenShoot Demo在CSDN上的下载地址:Android实现长图功能 在Android开发中,有时候会遇到需要分享到朋友圈或者QQ,有截取当前屏幕,也有需要截取不仅一个屏幕,可能会很长。 截取当前屏幕并保存到内存卡的方法: // 获取指定Activity的,保存到png文件 public static Bitmap takeScreenShot(Activity activity) ) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } // 程序入口 截取当前屏幕 Activity a,String picpath) { ScreenShot.savePic(ScreenShot.takeScreenShot(a), picpath); } 当视图超过一个屏幕的时候

1.5K10
  • 广告
    关闭

    2023新春采购节

    领8888元新春采购礼包,抢爆款2核2G云服务器95元/年起,个人开发者加享折上折

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android中关于屏幕的三个小众知识(宽适配、禁止和保持屏幕常亮)

    前言 宽适配、禁止和保持屏幕常亮,这三个与屏幕有关的 Android 开发小众知识,说不定什么时候就派上用场。 宽适配 Android屏幕适配一直以来都在折磨着我们Android开发者,越来越多的手机厂商趋向于全面设计,比如今年出厂的 18.5:9 屏幕比例的三星 Galaxy S8 手机,前两天刚发布 18 超大屏幕比例的设计对于 Android App 来说,存在一个屏幕适配的问题。 明显可以看出,低比例值设置的 App 打开时屏幕上下均有留白,也就说不能充分利用屏幕空间。 禁止 像支付宝付款二维码这种对安全要求比较高的界面,应用一般会选择屏蔽设备功能。 当你同时按下快捷键组合(常见为开机键 + 音量上键)时,系统会自动提示失败等关联信息。

    70510

    Android实现方式整理(总结)

    本文介绍了Android 实现方式整理,分享给大家。 希望对大家有帮助 可能的需求: 自己的 所有的 带导航栏 不带导航栏 并编辑选取一部分 自动截取某个空间或者布局 截取长图 在后台去 1.只截取自己应用内部界面 1.1 截取除了导航栏之外的屏幕 android实现思路 Android系统是基于Linux内核的,所以也存在framebuffer这个设备,我们要实现的话只要能获取到framebuffer中的数据,然后把数据转换成图片就可以了 截取非含当前应用的屏幕部分(最佳官方方案) ​ Android 在5.0 之后支持了实时录的功能。通过实时录我们可以拿到的图像。同时可以通过在Service中处理实现后台的录。 实时 ​ 可参考2中Android 在5.0的做法,进行实时录制。 以上就是本文的全部内容,希望对大家的学习有所帮助。

    2.5K21

    android视频&手机录实现代码

    本文介绍了android视频&手机录实现代码,分享给大家,希望对大家有帮助 问题 在android中有时候我们需要对屏幕进行操作,单一的操作好解决可以通过activity的顶层view 解决办法 android5.0以上系统提供了一个 MediaProjectionManager类来对手机进行录操作,也支持获取手机的Image图像的操作,知道了这些我们就可以通过提供的api来进行操作了 这里通过Service来操作和录的api 1.绑定的Service Intent intent = new Intent(this, ScreenService.class); bindService data) { if (requestCode == RECORD_REQUEST_CODE && resultCode == RESULT_OK) { //######## 逻辑 获取 @Override public void onClick(View view) { //######## 逻辑 ######## Bitmap bitmap = recordService.getBitmap

    1.3K32

    Android方案实现原理解析

    Android的原理:获取具体需要的区域的Bitmap,然后绘制在画布上,保存为图片后进行分享或者其它用途 在功能中,有时需要截取全屏的内容,有时需要截取超过一的内容(比如:Listview 下面介绍各种场景获取Bitmap的方法 普通的实现 获取当前Window的DrawingCache的方式,即decorView的DrawingCache /** * shot the current Scrollview 三个中,ScrollView最简单,因为ScrollView只有一个childView,虽然没有全部显示在界面上,但是已经全部渲染绘制,因此可以直接 调用 scrollView.draw final Canvas canvas = new Canvas(bitmap); scrollView.draw(canvas); return bitmap; } Scrollview 方案实现原理解析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。

    95651

    Android源码解析之事件流程

    今天这篇文章我们主要讲一下Android系统中的事件处理流程。 用过android系统手机的同学应该都知道,一般的android手机按下音量减少键和电源按键就会触发事件(国内定制机做个修改的这里就不做考虑了)。那么这里的事件是如何触发的呢? 触发之后android系统是如何实现操作的呢?带着这两个问题,开始我们的源码阅读流程。 我们知道这里的事件是通过我们的按键操作触发的,所以这里就需要我们从android系统的按键触发模块开始看起,由于我们在不同的App页面,操作音量减少键和电源键都会触发系统的处理,所以这里的按键触发逻辑应该是 ,然后我看一下SurfaceControl.screenshot方法的具体实现,另外这里需要注意的是,之后返回的是一个Bitmap对象,其实熟悉android绘制机制的童鞋应该知道android中所有显示能够显示的东西

    46720

    js以及three.js场景

    来来来,说正事 在手机端完全不需要前端动什么脑子,但是在网页上就很头疼了,我这里介绍两种情形,针对普遍和某一特殊功能需求 1、js插件html2canvas.js 这个插件真的很好用,而且GitHub document.querySelector("#capture")).then(canvas => { document.body.appendChild(canvas) }); 2、js原生代码 那就是出来的图片是空白的,场景scene后期渲染的比如灯光,加载的模型都没有截图截下来。 WebGLRenderer({ antialias: true, alpha: true, preserveDrawingBuffer :true }) 第二种方法就是在截图之前先渲染一下场景和相机,就不会实时刷新屏幕 ,导致我们下来的是空白了 let canvas=rederer.domElement rederer.render(scene, camera) var imgUri = canvas.toDataURL

    1.4K20

    关注

    腾讯云开发者公众号
    10元无门槛代金券
    洞察腾讯核心技术
    剖析业界实践案例
    腾讯云开发者公众号二维码

    相关产品

    • 云桌面

      云桌面

      云桌面(Cloud Virtual Desktop,CVD),为您提供随需快捷交付的虚拟桌面服务。通过加密的自适应传输协议,构建业务安全访问入口,且最终用户可以获得优质的云桌面访问体验。云桌面服务可为您构建可靠的数字化工作空间,实现远程办公,提升业务访问的安全性和连续性。

    相关资讯

    热门标签

    活动推荐

    扫码关注腾讯云开发者

    领取腾讯云代金券