应用内截屏的代码,在Activity中测试可用

截屏功能让我十分头疼,想做个无需root的又找不到资料。这里暂且分享一个无需root的,在应用内截屏的代码,本文转自:http://blog.csdn.net/csh159/article/details/7876415

  截图后→  

布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="fill_parent"
        android:layout_height="350dip"
        android:src="@drawable/right"/>

    <Button
        android:id="@+id/shotButton"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="shot" />

</LinearLayout>

MainActivity

package com.kale.floattest;

import android.R.color;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.view.Display;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;

public class MainActivity extends Activity {

    private Button shotButton;
    private ImageView imageView;
    BitmapDrawable bd;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        shotButton = (Button) findViewById(R.id.shotButton);
        imageView = (ImageView) findViewById(R.id.imageView);
        shotButton.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {

                 imageView.setImageBitmap(shot());
            }
        });
        //startService(new Intent(MainActivity.this, TestService.class));
    }

    /**
     * 截屏方法
     *
     * @return
     */
    private Bitmap shot() {
        View view = getWindow().getDecorView();
        Display display = this.getWindowManager().getDefaultDisplay();
        view.layout(0, 0, display.getWidth(), display.getHeight());
        view.setDrawingCacheEnabled(true);// 允许当前窗口保存缓存信息,这样getDrawingCache()方法才会返回一个Bitmap
        Bitmap bmp = Bitmap.createBitmap(view.getDrawingCache());
        return bmp;
    }
}

应用内截屏的代码,在Activity中测试可用,布布扣,bubuko.com

时间: 2024-10-08 06:00:14

应用内截屏的代码,在Activity中测试可用的相关文章

Android截屏关键代码

[java] view plaincopy package com.wangzhen.util; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import android.app.Activity; import android.graphics.Bitmap; import android.graph

ios 截屏(代码)

//1.首先在storyboard中拖一些控件,包括UIButton控件,将UIButton控件拖线到控制器中(方法.CutImage) //2.在CutImage方法中调用NSTimer方法 - (IBAction)CutImage:(UIButton *)sender { NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1.0 targer:self  selector:@selector(clipImage) userInf

android 后台截屏核心代码

RootCommand("su -c 'screencap /mnt/sdcard/screenaaa.png' && adb pull /sdcard/screenaaa.png") ; /** * 应用程序运行命令获取 Root权限,设备必须已破解(获得ROOT权限) * * @param command * 命令:String apkRoot="chmod 777 "+getPackageCodePath(); * RootCommand(ap

分享一种全新的截屏方法

一种全新的截屏方法 在任何时候点击手机上的浮动小球(红色圈内)就能完成整个屏幕信息的截取功能,而且最终保存的图像还不会包含该小球,这就是本文将要介绍的方法.手机整体屏幕获取项目下载链接:http://files.cnblogs.com/files/tgyf/CaptureScreen.rar. 以全新的视角实现手机屏幕的截取(快照)功能,文章可能比较长,感兴趣的朋友一定得看完,会有收获的哦!若发现有哪些地方存在问题或某些功能有更好的实现方式,欢迎指点,先谢过(我可以尽快改正或完善,以免继续误导别

Android新姿势:截屏代码整理

今天做项目要用到android截屏功能,一开始我还庆幸看过一些博客的文章,自信能轻松解决...- - 结果坑了一天才搞了个差不多的交差...哎! 关于android截屏的代码,大致有3种方法,有兴趣的看下去吧. 方法一: 网上看了很多文章,大多用的是这样的方法,直接把一个View转换成Bitmap,然后保存到sd卡. /** * 根据view来生成bitmap图片,可用于截图功能 */ public static Bitmap getViewBitmap(View v) { v.clearFoc

Java代码截屏

使用java,借助Robot这个类可以实现软件截屏,代码如下: package test; import java.awt.AWTException; import java.awt.DisplayMode; import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; import java.awt.Image; import java.awt.MenuItem; import java.awt.PopupMenu;

javascript实现当前页面截屏

javascript实现当前页面截屏 一.前言 有客户要求能对用户当前页面进行指定区域截屏,类似qq截屏的实现效果.比如用户在处理工作的时候,将当前页面录入后的一些信息进行截图下载保存.但又不能安装任何客户端控件,只能用javascript实现.网上搜索了一下,没有可用的方案(http://www.2cto.com/kf/201301/184453.html,这个虽然提供了方法,但是在实际使用中无法满足,例如支持低版本的IE,支持内嵌的iframe截图).但是也找到了一些可能的思路,经过几天奋战

creator2.0.2 native游戏截屏微信分享

cocos creator 2.0.2后 游戏内截屏,native微信SDK分享代码: public static wxShareScreenShot(sType: number) { let node = new cc.Node(); node.parent = cc.director.getScene(); node.width = cc.view.getVisibleSize().width; node.x = cc.view.getVisibleSize().height; node.y

【Android实战】Bitmap图片的截屏、模糊处理、传递、使用

项目中遇到了这样一个需求: 当某个条件满足时就截取当前屏幕.并跳转到另外一个页面,同一时候将这个截屏图片作为下一个页面的背景图片,同一时候背景图片须要模糊处理 接下来就一步一步解决这个问题: 1.截取无状态栏的当前屏幕图片.请參考takeScreenShot方法 2.使图片高斯模糊的方法请參考blurBitmap方法 注意:RenderScript是Android在API 11之后增加的,用于高效的图片处理,包含模糊.混合.矩阵卷积计算等 public class ScreenShotUtil