当前位置:  编程技术>移动开发

Android中截取当前屏幕图片的实例代码

    来源: 互联网  发布时间:2014-10-21

    本文导语:  代码如下:/**     * 获取和保存当前屏幕的截图     */    private void GetandSaveCurrentImage()      {          //1.构建Bitmap          WindowManager windowManager = getWindowManager();          Display display = windowManager.getDefaultDisplay...

代码如下:

/**
     * 获取和保存当前屏幕的截图
     */
    private void GetandSaveCurrentImage() 
    { 
        //1.构建Bitmap 
        WindowManager windowManager = getWindowManager(); 
        Display display = windowManager.getDefaultDisplay(); 
        int w = display.getWidth(); 
        int h = display.getHeight(); 

        Bitmap Bmp = Bitmap.createBitmap( w, h, Config.ARGB_8888 );     

        //2.获取屏幕 
        View decorview = this.getWindow().getDecorView();  
        decorview.setDrawingCacheEnabled(true);  
        Bmp = decorview.getDrawingCache();  

        String SavePath = getSDCardPath()+"/AndyDemo/ScreenImage";

        //3.保存Bitmap  
        try { 
            File path = new File(SavePath); 
            //文件 
            String filepath = SavePath + "/Screen_1.png"; 
            File file = new File(filepath); 
            if(!path.exists()){ 
                path.mkdirs(); 
            } 
            if (!file.exists()) { 
                file.createNewFile(); 
            } 

            FileOutputStream fos = null; 
            fos = new FileOutputStream(file); 
            if (null != fos) { 
                Bmp.compress(Bitmap.CompressFormat.PNG, 90, fos); 
                fos.flush(); 
                fos.close();   

                Toast.makeText(mContext, "截屏文件已保存至SDCard/AndyDemo/ScreenImage/下", Toast.LENGTH_LONG).show(); 
            } 

        } catch (Exception e) { 
            e.printStackTrace(); 
        } 
    } 

    /**
     * 获取SDCard的目录路径功能
     * @return
     */
    private String getSDCardPath(){
        File sdcardDir = null;
        //判断SDCard是否存在
        boolean sdcardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);
        if(sdcardExist){
            sdcardDir = Environment.getExternalStorageDirectory();
        }
        return sdcardDir.toString();
    }

由于要对SDCard进行操作,所以别忘记了在manifest.xml文件中赋以对SDCard的读写权限:


    
 
 

您可能感兴趣的文章:

  • Android截取视频帧并转化为Bitmap示例
  • Android瀑布流实例 android_waterfall
  • Android的OpenGL编程实例 Android-GL
  • android 简单图片动画播放的实例代码
  • android WakeLock使用方法代码实例
  • android自动安装apk代码实例(不使用apk安装器安装)
  • android 弹出提示框的使用(图文实例)
  • 控制Android LED灯颜色的代码实例
  • Android中AnimationDrawable使用的简单实例
  • Android中将View的内容保存为图像的简单实例
  • 博客 iis7站长之家
  • android中Bitmap的放大和缩小实例代码
  • android中写一个内部类来选择文件夹中指定的图片类型实例说明
  • 怎样删除android的gallery中的图片实例说明
  • 在Android中 获取正在运行的Service 实例
  • Android根据电话号码获得联系人头像实例代码
  • Android调用默认浏览器打开指定Url的方法实例
  • android双缓冲技术实例详解
  • ANDROID 完美退出APP的实例代码
  • Android对sdcard扩展卡文件操作实例详解
  • Android 清除SharedPreferences 产生的数据(实例代码)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Android点亮屏幕或屏幕解锁和锁定以及其他相关权限实现代码
  • android开发教程之textview内容超出屏幕宽度显示省略号
  • Android判断屏幕是横屏或是竖屏的简单实现方法
  • android 选项卡(TabHost)如何放置在屏幕的底部
  • Android获取屏幕方向及键盘状态的小例子
  • Android-屏幕适配需要注意的地方总结
  • android 如何设置开机后屏幕亮度默认值为自动调节
  • android获取屏幕像素思路及代码
  • android 获取屏幕像素大小的正确方法
  • Android 获取屏幕高度,标题高度,状态栏高度(实例代码)
  • android屏幕全屏的实现代码
  • android接收到蓝牙配对请求时如何点亮屏幕具体实现
  • 解析android中的dip,dp,px,sp和屏幕密度
  • android获取屏幕的长与宽实现代码(手写)
  • 探讨Android 的屏幕滚动操作不如 iPhone 流畅顺滑的原因
  • Android中通过view方式获取当前Activity的屏幕截图实现方法
  • Android开发 旋转屏幕导致Activity重建解决方法
  • Android的单位以及屏幕分辨率详解
  • android 键盘事件和屏幕事件的运行原理及交互实现
  • android 屏幕亮度调节方法详解
  • 申请Android Map 的API Key(v2)的最新申请方式(SHA1密钥)
  • Android系统自带样式 (android:theme)
  • Android开发需要的几点注意事项总结
  • Android网络共享软件 Android Wifi Tether
  • android 4.0 托管进程介绍及优先级和回收机制
  • Android 图标库 Android GraphView
  • Android访问与手机通讯相关类的介绍
  • 轻量级Android开发工具 Android Tools
  • Android及andriod无线网络Wifi开发的几点注意事项
  • Android 开发环境 Android Studio
  • Android 2.3 下StrictMode介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3