美文网首页
震动效果实现

震动效果实现

作者: 见哥哥长高了 | 来源:发表于2019-07-10 15:17 被阅读0次

    以下内容只作为个人学习交流所用!

    要实现安卓手机震动效果,需要用到Vibrator对象,其用法非常简单,只需要创建Vibrator实例对象,设置震动大小和震动时常。其震动方式的设置有两种:一直震动和只震动一次两种。
    首先:Manifest.xml中设置权限

    <uses-permission android:name="android.permission.VIBRATE" />
    

    接下来,获取Vibrator对象并实现震动,其震动方式多种 但是具体实现一样,视参数而定。

            vibrator = (Vibrator)getApplication().getSystemService(Service.VIBRATOR_SERVICE);
    

    //设置短震动

           
            toggleButton01.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
    
                    if (toggleButton01.isChecked()){
    
                        //震动开启
                        vibrator.vibrate(new long[]{100,10,100,1000},-1);
    
                        Toast.makeText(MainActivity.this, "震动...",0).show();
    
                    }else {
    
                        //震动取消
                        vibrator.cancel();
    
                        Toast.makeText(MainActivity.this, "震动取消...",0).show();
    
                    }
                }
            });
    

    //设置长震动模式

            
            toggleButton02.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    if (toggleButton02.isChecked()){
    
                        //设置震动短周期
                        vibrator.vibrate(new long[]{100,100,100,1000},0);
    
                        //震动开启
                        Toast.makeText(MainActivity.this, "震动...",0).show();
    
                    }else {
    
                        //震动取消
                        vibrator.cancel();
    
                        Toast.makeText(MainActivity.this, "震动取消...",0).show();
    
                    }
                }
            });
    
    

    //设置节奏震动模式

            toggleButton03.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    if (toggleButton03.isChecked()){
                        vibrator.vibrate(new long[]{1000,50,1000,50,1000},0);
    
                        Toast.makeText(MainActivity.this, "震动...",0).show();
    
                    }else {
    
                        vibrator.cancel();
    
                        Toast.makeText(MainActivity.this, "震动取消...",0).show();
    
                    }
                }
            });
    
    

    相关文章

      网友评论

          本文标题:震动效果实现

          本文链接:https://www.haomeiwen.com/subject/jlshkctx.html