Android水波紋效果實現
這個小DEMO是朋友發給小馬的,忘了是誰,在這感謝下他, 沒有這個DEMO我真不知道安卓水波紋是怎麼實現的,這個不多講了,模擬器中有點卡的樣子,大家在真機上試是正常的小馬直接上程式碼,上效果,有需要的朋友下載下附件DEMO就可以了, 裡面有些是呼叫NATIVE庫的,希望CPP高手C高手多留言指點指點,放在這,供大家下載學習交流,吼吼,好東西,必須分享,這個DEMO,小馬不多講了,直接寫了,原因看註釋裡面就行的了 效果如下:
主控制類程式碼如下:
- package com.example.plasma;
- import android.app.Activity;
- import android.content.Context;
- import android.content.Intent;
- import android.os.Bundle;
- import android.util.AttributeSet;
- import android.view.MotionEvent;
- import android.view.View;
- import android.view.Window;
- import android.graphics.Bitmap;
- import android.graphics.BitmapFactory;
- import android.graphics.Canvas;
- import android.graphics.Color;
- /**
- * @Title: AnimActivity.java
- * @Package com.example.plasma
- * @Description: 安卓水波紋效果製作學習
- * @author XiaoMa
- *
- * 這個小DEMO是朋友發給小馬的,忘了是誰,在這感謝下他,
- * 沒有這個DEMO我真不知道安卓水波紋是怎麼實現的,這個不多講了,
- * 模擬器中有點卡的樣子,大家在真機上試是正常的
- * 小馬直接上程式碼,上效果,有需要的朋友下載下附件DEMO就可以了
- * 裡面有些是呼叫NATIVE庫的,希望CPP高手C高手多留言指點指點,
- * 放在這,供大家下載學習交流,吼吼,好東西,必須分享
- *
- */
- public class AnimActivity extends Activity {
- @Override
- public void onCreate(Bundle savedInstanceState){
- super.onCreate(savedInstanceState);
- setContentView(new PlasmaView(this));
- // this.requestWindowFeature(Window.FEATURE_NO_TITLE);
- }
- }
- 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.lvzi);
- 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){
- time = ct;
- fps = 0;
- }
- fps++;
- AnimRender.render(mBitmap);
- canvas.drawBitmap(mBitmap, 0, 0, null);
- postInvalidate();
- }
- @Override
- public boolean onTouch(View v, MotionEvent event) {
- AnimRender.drop((int)event.getX(), (int)event.getY(), 500);
- 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”);
- }
- }
最後,程式碼小馬就放在附件裡面,有需要的朋友可下載學習下,在此感謝發我這人小DEMO的朋友,特此感謝!謝謝…
本文轉自華華世界 51CTO部落格,原文連結:http://blog.51cto.com/mzh3344258/808842,如需轉載請自行聯絡原作者
相關文章
- Android 水波紋效果的探究Android
- 使用CSS實現逼真的水波紋點選效果CSS
- Item點選水波紋效果
- 浪起來!使用 drawBitmapMesh 實現模擬水波紋效果
- Android-貝塞爾曲線實現水波紋動畫Android動畫
- Flutter | 如何實現一個水波紋擴散效果的 WidgetFlutter
- Android中水波紋使用Android
- Android中水波紋使用之自定義檢視實現Android
- 類似咻一咻,水波紋實現
- Jetapck Compose 去除點選水波紋效果
- android 控制元件點選水波紋效果的幾種方案Android控制元件
- 水波紋特效—Ripple特效
- Android 炫酷多重水波紋 MultiWaveHeaderAndroidHeader
- 純 CSS 實現斜紋效果CSS
- Android 設定主題實現點選波紋效果Android
- 如何用canvas實現大波紋灌水效果Canvas
- android中foreground水波實現過程分析Android
- 水波圖實現原理
- threejs紋理平鋪實現地面效果JS
- css實現螺紋動態進度條效果CSS
- css3和jQuery實現的點選出現波紋效果CSSS3jQuery
- css3實現的滑鼠懸浮出現輻射波紋效果CSSS3
- Qml 實現水波進度動畫條動畫
- android 簡單實現指紋識別功能Android
- Android自定義View——從零開始實現水波浪進度框AndroidView
- css3實現的斑馬紋效果程式碼例項CSSS3
- Android實現蛛網背景效果Android
- Android 毛玻璃效果的實現Android
- 特效實現用查表法實現對水波的模擬(轉)特效
- 毛玻璃效果在Android的實現Android
- Flutter 解決系統BottomNavigationBar的水波紋問題FlutterNavigation
- 在程式碼中實現android:tint效果Android
- Android UI 實現廣告 Banner 輪播效果AndroidUI
- Android實現Activity的滑動返回效果Android
- Android ListView實現品種分類效果AndroidView
- Android自定義View 水波氣泡AndroidView
- HarmonyOS NEXT應用開發—聽歌識曲水波紋特效案例特效
- 利用es6實現互動的水波特效特效