写在前面:
公司需求(万恶的公司需求),需要在客户端实现 签字的功能,需求的延伸 就牵引出了 截图,保存本地相册 最后再图片上传(我们讨论的结果是要截图 保存本地去上传的 或者直接 截图 上传 也是可以的)不知道贵公司的需求是怎么样的哦.....
1.需要权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
2.实现客户端签字,要用到自定义View,上代码! 注: 已经实现,摇动屏幕,文字自动消失(抹去)的功能
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.RectF;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
public class SignatureView extends View {
private static final float STROKE_WIDTH = 5f;
/** Need to track this so the dirty region can accommodate the stroke. **/
private static final float HALF_STROKE_WIDTH = STROKE_WIDTH / 2;
private Paint paint = new Paint();
private Path path = new Path();
/**
* Optimizes painting by invalidating the smallest possible area.
*/
private float lastTouchX;
private float lastTouchY;
private final RectF dirtyRect = new RectF();
public SignatureView(Context context, AttributeSet attrs) {
super(context, attrs);
paint.setAntiAl