如何在Android中以编程方式禁用触摸时的振动和声音?

时间:2013-01-28 04:26:10

标签: android

我正在制作一个应用程序并使用ImageView的OnLongClickListener打开alertdialog,并且还在ontouch缩放上。但是当我长时间按压而不是振动时,可以在长按聆听器上关闭振动。我使用下面的代码:

public OnLongClickListener longClick = new View.OnLongClickListener() {

    @Override
    public boolean onLongClick(View v) {
        Vibrator vibe = (Vibrator)DailySatsangActivity.this.getSystemService(Context.VIBRATOR_SERVICE) ;
        vibe.cancel();
        }
    };

2 个答案:

答案 0 :(得分:6)

我认为您遇到的问题是触觉反馈,而不是正常的振动。

您可以使用以下代码

关闭“触觉反馈”

XML属性: android:hapticFeedbackEnabled //set it true or false in view's xml file for the desired result.

Java方法: setHapticFeedbackEnabled(boolean)

您可以使用音频管理器类来禁用声音和振动,请查看音频管理器类的setRingerMode方法。

示例:

AudioManager aManager=(AudioManager)getSystemService(AUDIO_SERVICE);
aManager.setRingerMode(aManager.RINGER_MODE_SILENT);

希望这能解决您的问题。

答案 1 :(得分:0)

您应该使用AudioManager类。