Android如何实现简易版弹钢琴效果

  介绍

这篇文章给大家分享的是有关Android如何实现简易版弹钢琴效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

具体内容如下

<强>目标效果:

 Android如何实现简易版弹钢琴效果

1.可拉的下新建button_selector。xml页面:

& lt; ? xml  version=?.0“,编码=皍tf-8" ?比;   & lt; selector  xmlns: android=癶ttp://schemas.android.com/apk/res/android"比;   ,   ,& lt; item  android:可拉的=癅drawable/button_pressed", android: state_pressed=皌rue"祝辞& lt;/item>   ,& lt; item  android:可拉的=癅drawable/button"祝辞& lt;/item>   ,   & lt;/selector>

2.可拉的下新建按钮。xml页面:

& lt; ? xml  version=?.0“,编码=皍tf-8" ?比;   & lt; shape  xmlns: android=癶ttp://schemas.android.com/apk/res/android",在   ,   & lt;角落   ,android: bottomLeftRadius=?0 dp"   ,android: bottomRightRadius=?0 dp",在   ,& lt;/corners>   ,   & lt;中风   ,android:宽度=? dp"   ,android:颜色=? 605 c59",/比;   ,   & lt;梯度   ,android:角=?70”;   ,android: endColor=? FFFFFF"   ,android: startColor=? F5F5F5",/比;   ,   & lt;/shape>

3.可拉的下新建button_pressed。xml页面:

& lt; ? xml  version=?.0“,编码=皍tf-8" ?比;   & lt; shape  xmlns: android=癶ttp://schemas.android.com/apk/res/android",在   ,   ,& lt; solid  android:颜色=? A4A4A4",/比;   ,   & lt;角落   ,android: bottomLeftRadius=?0 dp"   ,android: bottomRightRadius=?0 dp",在   ,& lt;/corners>   ,   & lt;中风   ,android:宽度=? dp"   ,android:颜色=? 605 c59",/比;   ,   & lt;/shape>

4。新建PanioMusic。java类

package  com.example.weixu.view;   ,/* *   ,*音乐播放帮助类   ,*/,   import  java.util.HashMap;   import  android.content.Context;   import  android.media.AudioManager;   import  android.media.SoundPool;   ,   import  com.example.weixu.playpanio.R;   ,   public  class  PanioMusic  {   ,//资源文件   ,int 音乐[],=,{R.raw.re2, R.raw.do1,还以为,R.raw.mi3, R.raw.fa4,, R.raw.sol5,   ,R.raw.la6, R.raw.si7};   ,SoundPool  soundPool;   ,HashMap<整数,Integer>, soundPoolMap;   ,   ,public  PanioMusic (Context 上下文),{=,,soundPool  new  SoundPool (2, AudioManager.STREAM_MUSIC,, 100);=,,soundPoolMap  new  HashMap<整数,,Integer> ();   ,for  (int 小姐:=,0;,小姐:& lt;, Music.length;,我+ +),{   ,soundPoolMap.put(我,soundPool.load(上下文,,音乐(我),,1));   ,}   ,}   ,   ,public  int  soundPlay (int 没有),{   ,return  soundPool.play (soundPoolMap.get(没有),100,,100,,1,,0,1.0度);   ,}   ,   ,public  int  soundOver (), {   ,return  soundPool.play (soundPoolMap.get(1), 100,, 100,, 1,, 0, 1.0度);   ,}   ,   ,@Override   ,protected  void  finalize (), throws  Throwable  {   ,soundPool.release ();   ,super.finalize ();   ,}   }

5. activity_main。xml页面:

& lt; LinearLayout  xmlns: android=癶ttp://schemas.android.com/apk/res/android"   ,xmlns:工具=癶ttp://schemas.android.com/tools"   ,android: id=癅 + id/llparent"   ,android: layout_width=癿atch_parent"   ,android: layout_height=癿atch_parent"   ,android:取向=皏ertical"   ,工具:上下文=?MainActivity",比;   ,   & lt; LinearLayout   ,android: id=癅 + id/llKeys"   ,android: layout_width=癿atch_parent"   ,android: layout_height=? dp"   ,android: layout_weight=?”;   ,android:取向=癶orizontal"   ,android:填充=?0 dp",在   ,   & lt;按钮   ,android: id=癅 + id/btPanioOne"   ,android: layout_width=? dp"   ,android: layout_height=癿atch_parent"   ,android: layout_weight=?”;   ,android:背景=癅drawable/button"   ,android:文本=?“,/比;   ,   & lt;按钮   ,android: id=癅 + id/btPanioTwo"   ,android: layout_width=? dp"   ,android: layout_height=癿atch_parent"   ,android: layout_weight=?”;   ,android:背景=癅drawable/button"   ,android:文本=?“,/比;   ,   & lt;按钮   ,android: id=癅 + id/btPanioThree"   ,android: layout_width=? dp"   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

Android如何实现简易版弹钢琴效果