模拟彩票刮奖
来源:互联网 发布:麦克数据 编辑:程序博客网 时间:2024/04/27 18:24
import android.app.Activity;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.media.MediaPlayer;import android.os.Bundle;import android.view.MotionEvent;import android.view.View;import android.view.View.OnTouchListener;import android.widget.ImageView;public class MainActivity extends Activity { private ImageView iv_pre; private Bitmap alterBitmap; //将缓存的 图片做成类的成员变量 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); iv_pre = (ImageView) findViewById(R.id.iv_pre); // 原图. 位图工厂 解码图片 Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.pre); //获取缓存图片 原图的宽 alterBitmap = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), bitmap.getConfig()); //创建画板 以....为模版 Canvas canvas = new Canvas(alterBitmap); //画笔 Paint paint = new Paint(); //参考原图 以1:1的比例画 canvas.drawBitmap(bitmap, new Matrix(), paint); //设置缓存图片到视图窗口 iv_pre.setImageBitmap(alterBitmap); iv_pre.setOnTouchListener(new OnTouchListener() { int x; //jiangx和y定义到外面 全局共享 不用每个都定义了 int y; @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: //水平方向的坐标 x = (int) event.getX(); //垂直方向的坐标 y = (int) event.getY(); for(int i=-3;i<4;i++){//定义撕开的长度 for(int j=-3;j<4;j++){//定义撕开的宽度 if(Math.sqrt(i*i+j*j)<=3){//定义撕开的是一个圆形 try {//防止鼠标移动到图片外面而产生异常 所以直接 try , catch 来解决 //设置某一个像素点的颜色 x y 的像素点的值 透明色 alterBitmap.setPixel(x+i, y+j, Color.TRANSPARENT); } catch (Exception e) { e.printStackTrace(); } } } } iv_pre.setImageBitmap(alterBitmap); break; case MotionEvent.ACTION_MOVE: x = (int) event.getX(); y = (int) event.getY(); for(int i=-3;i<4;i++){ for(int j=-3;j<4;j++){ if(Math.sqrt(i*i+j*j)<=3){ try { alterBitmap.setPixel(x+i, y+j, Color.TRANSPARENT); } catch (Exception e) { e.printStackTrace(); } } } } iv_pre.setImageBitmap(alterBitmap); break; case MotionEvent.ACTION_UP: break; } return true;// 事件结束被消费掉了 } }); }}
0 0
- 模拟彩票刮奖
- 模拟彩票刮奖优化全屏
- 模拟彩票
- 小小彩票模拟
- 算法入门--模拟彩票
- 用随机数模拟中奖彩票
- 彩票模拟程序 2012.01.04
- 代码--模拟购买彩票系统
- java模拟双色球彩票程序
- 模拟双色球彩票 The Double Chromosphere
- 彩票刮号
- Android刮彩票效果
- 彩票
- 彩票
- 彩票
- 彩票
- 彩票
- 彩票
- 冒泡排序
- 1025 PAT Ranking (25)
- 【小项目】内存池的实现
- [心得] docker export和save的区别浅析
- java ftp下载
- 模拟彩票刮奖
- 多态的知识点总结
- Android设置文件共享
- 消息提示页面跳转
- android studio绑定git进行项目多人合作开发及代码托管
- 一笔画问题-判断连通性+欧拉图
- 模拟彩票刮奖优化全屏
- 队列
- 标准化,归一化和正则化