Android使用Google自带的截屏方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Wtoria/article/details/51319076

通过几行简单的代码实现截屏的方法:


获得整个屏幕:

getWindow().getDecorView();


通过这个方法写了个Demo:

public class MainActivity extends Activity implements View.OnClickListener {

    private ImageView mImageView;
    private Button mBtnScreen;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initViews();
    }

    private void initViews() {
        mImageView = (ImageView) findViewById(R.id.imageView);
        mBtnScreen = (Button) findViewById(R.id.btnScreen);
        mBtnScreen.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        generateScreen();
        mImageView.setImageBitmap(generateScreen());
    }

    private Bitmap generateScreen() {;
        View view = getWindow().getDecorView();
        view.setDrawingCacheEnabled(true);
        view.buildDrawingCache();
        return view.getDrawingCache();
    }
}


点击按钮截取屏幕返回一个Bitmap对象,设置给ImageView进行显示,代码很简单但很实用。


运行效果:





展开阅读全文

没有更多推荐了,返回首页