android实现截屏功能代码
来源:互联网 发布:人工智能a7论坛 编辑:程序博客网 时间:2024/05/18 15:04
android开发中通过View的getDrawingCache方法可以达到截屏的目的,只是缺少状态栏!
APP原始界面
保存截图的文件
代码的实现
1. 添加权限(AndroidManifest.xml文件里)
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
2.添加1个Button(activity_main.xml文件)
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <Button android:id="@+id/button" android:onClick="button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/button" android:layout_below="@+id/button" android:layout_marginTop="60dp" android:text="TextView" /></RelativeLayout>
3.实现截屏(MainActivity.java文件)
package com.texst.lp;import java.io.File;import java.io.FileOutputStream;import android.app.Activity;import android.graphics.Bitmap;import android.os.Bundle;import android.os.Environment;import android.view.View;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity { private TextView mTextView; private String filePath; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 图片保存路径 mTextView = (TextView) findViewById(R.id.textView1); } public void button(View view) { screenshot(); mTextView.setText(filePath); Toast.makeText(getApplicationContext(), "jietu", Toast.LENGTH_SHORT) .show(); } private void screenshot() { // 获取屏幕 View dView = getWindow().getDecorView(); dView.setDrawingCacheEnabled(true); dView.buildDrawingCache(); Bitmap bmp = dView.getDrawingCache(); if (bmp != null) { try { // 获取内置SD卡路径 String sdCardPath = Environment.getExternalStorageDirectory() .getPath(); // 图片文件路径 filePath = sdCardPath + File.separator + "screenshot.png"; File file = new File(filePath); FileOutputStream os = new FileOutputStream(file); bmp.compress(Bitmap.CompressFormat.PNG, 100, os); os.flush(); os.close(); } catch (Exception e) { } } }}
0 0
- android代码实现截屏功能
- android实现截屏功能代码
- android实现截屏功能代码
- Android实现截屏功能代码
- android自动更新功能实现 代码
- Android 实现分享功能代码
- android 单行代码实现功能
- android截屏功能实现
- android截屏功能实现
- android截屏功能实现
- 【Android】实现截屏功能
- android实现截屏功能
- Android代码实现图片圆角功能---------------
- Android应用自动更新功能的代码实现
- Android应用自动更新功能的代码实现
- Android应用自动更新功能的代码实现
- Android应用自动更新功能的代码实现
- Android应用自动更新功能的代码实现
- 在简历中应用STAR法则
- c++编程出现 MFC error C3646: 未知重写说明符
- MySql常见语法
- 通讯录(动态版本)
- Appium 实现 LockViewPatter 手势密码输入方法之一
- android实现截屏功能代码
- Website Password hacking using WireShark
- 欢迎使用CSDN-markdown编辑器
- React 入门实例教程
- poj 3616 Milking Time 【区间DP】
- scala学习笔记12 操作符
- Python网络数据采集11(译者:哈雷)
- 在进行jpa更新操作中报异常Cascade="All-Delete-Orphan" 处理
- Java实现图片水印效果