55.模拟撕衣服游戏编辑图片
来源:互联网 发布:android ios js交互 编辑:程序博客网 时间:2024/04/25 22:50
撕衣服游戏的原理:原本有2个图片,一个原图片,一个被撕了衣服以后的图片。两个图片放在一起,原图片放在上面,收滑动的时候上面图片的像素点设置成透明,下面的图片自然露出来了。
布局文件
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" > <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/xiatu" /> <ImageView android:id="@+id/iv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/shangtu" /></RelativeLayout>
MainActivity.java
package com.ldw.siyifu;import android.R.color;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.os.Bundle;import android.view.MotionEvent;import android.view.View;import android.view.View.OnTouchListener;import android.widget.ImageView;public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取到原图片 Bitmap bitSrc = BitmapFactory.decodeResource(getResources(), R.drawable.awaiyi); //创建外衣副本 final Bitmap bitCopy = Bitmap.createBitmap(bitSrc.getWidth(), bitSrc.getHeight(), bitSrc.getConfig()); Paint paint = new Paint(); Canvas canvas = new Canvas(bitCopy); canvas.drawBitmap(bitSrc, new Matrix(), paint); final ImageView iv = (ImageView) findViewById(R.id.iv); iv.setImageBitmap(bitCopy); iv.setOnTouchListener(new OnTouchListener(){@Overridepublic boolean onTouch(View v, MotionEvent event) {int action = event.getAction();switch(action){//触摸屏幕case MotionEvent.ACTION_DOWN:break;//屏幕上移动case MotionEvent.ACTION_MOVE:int x = (int) event.getX();int y = (int) event.getY();//限制编辑的区域,在图片的区域内才允许编辑if(x <= bitCopy.getWidth() && y<= bitCopy.getHeight()){//隐藏不止一个像素点,把周围的像素点都隐藏for(int i = -5; i <= 5; i++){for(int j = -5; j <= 5; j++){//涂抹的像素点是一个圆形if( i*i + j*j <= 25){//防止越界,上下左右设置边界if( x + i < bitCopy.getWidth() && y + j < bitCopy.getHeight() && x + i > 0 && y + j > 0){//用户滑动过的坐标设置成透明bitCopy.setPixel(x + i , y + j, Color.TRANSPARENT);iv.setImageBitmap(bitCopy);}}}}}break;//离开屏幕case MotionEvent.ACTION_UP:break;}//true:告诉系统,这个事件由自己处理,//false:告诉系统,事件由自己处理,系统会把触摸事件发送到iamgeView的父节点return true;} }); }}
0 0
- 55.模拟撕衣服游戏编辑图片
- iPhone撕衣服游戏-图片擦除
- 模拟撕衣服的代码
- Android 撕衣服(刮刮乐游戏)
- 19_Android中图片处理原理篇,关于人脸识别网站,图片加载到内存,图片缩放,图片翻转倒置,网上撕衣服游戏案例编写
- 19_Android中图片处理原理篇,关于人脸识别网站,图片加载到内存,图片缩放,图片翻转倒置,网上撕衣服游戏案例编写
- 撕衣服
- 撕衣服小游戏代码
- 撕衣服小游戏原理
- 撕衣服源码
- 撕衣服小案例
- Henrik Enqvist:游戏中的衣服仿真技巧
- Henrik Enqvist:游戏中的衣服仿真技巧
- HTML5游戏:《撕掉MM的衣服》
- Android小游戏应用---撕破美女衣服游戏
- 手机动画编辑器&&手机游戏图片编辑用法讲解
- 19、撕衣服(其实就是两张图片叠在一起)
- 手放开游戏(擦衣服游戏)项目源码
- ngqhwhuixcvuiqyuwtyacghvtywtyef
- nnqwboizxvoiquiwasyutytyctybwedf
- nhqwhhxcuibvuiqyuwstytycrrtvwes
- nnbwbnzxvuiqyuwastytytycbiwoeox
- nnqbwboiboiquiwayusyuxcbwyuetyy
- 55.模拟撕衣服游戏编辑图片
- 谈谈我对软件开发项目管理的理解
- shell判断传入参数是否存在
- WEB.MXL配置
- shell 解决syntax error问题的一种方法
- javascript单体
- 尝试去实现一个Promise
- SDK 与 API
- 系统内容提供者