我创建了一个 Activity 在屏幕上显示一个 ImageView。我想在单击图像时获得触觉反馈。
在主布局 main.xml 中,我添加了下一个 ImageView 标记:
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/image"
android:src="@drawable/dog"
android:onClick="doBark"
android:hapticFeedbackEnabled="true"/>
然后,在 Activity 代码中添加此方法:
public void doBark(View v) {
v.performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP);
Log.d("BarkingDog", "is hapticFeedbackEnabled: " + v.isHapticFeedbackEnabled());
}
当我单击图像时,我可以看到调用了 doBark() 并且 Logcat 的输出显示“是 hapticFeedbackEnabled:true”,但我什么都感觉不到。我也尝试过使用其他两个 HapticFeedback 常量,但没有运气。
我知道 HapticFeedback 已启用,因为每次我按下菜单按钮时,设备都会振动。
有任何想法吗?建议?
PS:我不想使用 Vibrator 对象。通过使用它,我可以使设备振动,但我认为这不是正确的做法。