画画板
来源:互联网 发布:问卷调查软件有哪些 编辑:程序博客网 时间:2024/04/27 13:23
package com.gjj.joy.draw;import android.app.Activity;import android.content.Intent;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Matrix;import android.graphics.Paint;import android.net.Uri;import android.os.Bundle;import android.os.Environment;import android.view.MotionEvent;import android.view.View;import android.widget.ImageView;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;/** * Created by joy on 2016/1/20. */public class DrawActivity extends Activity { private int startX=0; private int startY=0; private Paint paint; private Bitmap bmCopy; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.draw); Bitmap bmSrc=BitmapFactory.decodeResource(getResources(), R.drawable.bg); bmCopy=Bitmap.createBitmap(bmSrc.getWidth(), bmSrc.getHeight(), bmSrc.getConfig()); paint=new Paint(); final Canvas canvas=new Canvas(bmCopy); canvas.drawBitmap(bmSrc,new Matrix(),paint); final ImageView iv= (ImageView) findViewById(R.id.iv); iv.setImageBitmap(bmCopy); iv.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { int action=event.getAction(); switch (action){ case MotionEvent.ACTION_DOWN: startX= (int) event.getX(); startY= (int) event.getY(); break; case MotionEvent.ACTION_MOVE: int newStartX= (int) event.getX(); int newStartY= (int) event.getY(); canvas.drawLine(startX,startY,newStartX,newStartY,paint); startX=newStartX; startY=newStartY; iv.setImageBitmap(bmCopy); break; case MotionEvent.ACTION_UP: break; } return true; //设置为true,表示由这个组件自己处理,false表示由父节点处理 } }); } public void red(View v){ paint.setColor(Color.RED); } public void green(View v){ paint.setColor(Color.GREEN); } public void black(View v){ paint.setColor(Color.BLACK); } public void jiacu(View v){ paint.setStrokeWidth(10); } public void save(View v){ File file=new File("sdcard/pictures/tupian.jpg"); FileOutputStream fos= null; try { fos = new FileOutputStream(file); } catch (FileNotFoundException e) { e.printStackTrace(); } bmCopy.compress(Bitmap.CompressFormat.PNG, 100, fos); Intent intent=new Intent(); //android4.4以下使用这个action,Intent.ACTION_MEDIA_MOUNTED intent.setAction(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);//android4.4以上使用这个action intent.setData(Uri.fromFile(Environment.getExternalStorageDirectory())); sendBroadcast(intent); }}
0 0
- 画画板
- 画画板
- 画画板
- android画画板
- 图片画画板
- 图片画画板
- iOS 画画板
- iOS_24_画画板(含取色板)
- android 画画板
- 画画板原理
- andorid画画板
- 图片画画板
- Android画画板剖析
- android_65_简易画画板
- Android 画画板
- 画画板案例
- Android画画板
- 画画
- 年度盘点和预测:数说汽车互联网市场
- 服务器端架构,前端服务器与客户端随机负载平衡
- linux查看进程的启动时间
- C语言 CRC32校验算法
- test
- 画画板
- Android-Tips
- Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现
- Find a Peak Element
- 着相
- 一个路人对你有多大的影响
- Magic Spheres
- 蓝懿ios技术交流和心得分享16.1.20
- 样条曲线概述