展会信息港展会大全

android实现水波纹效果的例子
来源:互联网   发布日期:2015-09-24 19:56:03   浏览:9641次  

导读:水波纹效果的例子[代码] [Java]代码public class AnimActivity extends Activity {@Overridepublic void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(new......

水波纹效果的例子

[代码] [Java]代码

public class AnimActivity extends Activity {

@Override

public void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);

setContentView(new PlasmaView(this));

}

}

class PlasmaView extends View implements View.OnTouchListener{

private Bitmap mBitmap;

long time;

long fps;

public PlasmaView(Context context) {

super(context);

Bitmap bmp = BitmapFactory.decodeResource(this.getResources(),R.drawable.mm);

mBitmap = Bitmap.createBitmap(bmp.getWidth(), bmp.getHeight(), Bitmap.Config.RGB_565);

AnimRender.setBitmap(bmp);

this.setOnTouchListener(this);

}

@Override

protected void onDraw(Canvas canvas) {

long ct = System.currentTimeMillis();

if(ct - time > 1000){

Log.v("Fps:" + String.valueOf(fps));

time = ct;

fps = 0;

}

//fps++;

fps += 20;

AnimRender.render(mBitmap);

canvas.drawBitmap(mBitmap, 0, 0, null);

postInvalidate();

}

@Override

public boolean onTouch(View v, MotionEvent event) {

// TODO Auto-generated method stub

AnimRender.drop((int)event.getX(), (int)event.getY(), 1200);

return false;

}

}

class AnimRender{

public static native void setBitmap(Bitmap src);

public static native void render(Bitmap dst);

public static native void drop(int x, int y, int height);

static {

System.loadLibrary("plasma");

}

}

赞助本站

人工智能实验室

相关热词: 波纹 效果 例子

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港