React Native - 如何执行真正柔和的振动?

问题描述 投票:0回答:3

如何在 React Native 中执行真正柔和的振动?

我试图在按下底部选项卡时获得与应用程序“Binance”(在 iPhone 11 上测试)中相同的振动。我不知道这个应用程序是否是在 React Native 中实现的,但我喜欢在选项卡之间移动时的轻微振动。

但是,当我这样做时

   <Tab.Screen
      name="Home"
      component={HomeStacks}
      listeners={() => ({
        tabPress: () => {
          Vibration.vibrate(); // from react-native
        },
      })}
    />

在我的应用程序中,在同一设备中进行测试,振动真的很困难。

我这么说并不是为了持续时间,而是为了振动的力量。

有什么想法吗?可以使用 React Native 吗?

Pd:我尝试过使用

Vibration.vibrate(50)

为了减少持续时间,但是消失了(没有震动)

javascript reactjs react-native
3个回答
8
投票

解决方案是使用世博会的这个package

然后添加这样的触觉反馈:

   <Tab.Screen
      name="Home"
      component={HomeStacks}
      listeners={() => ({
        tabPress: () => {
          Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light);
        },
      })}
    />

2
投票

这是裸反应本机项目(非博览会)的另一个解决方案。
还有另一个图书馆叫做:

反应原生触觉反馈


import ReactNativeHapticFeedback from "react-native-haptic-feedback";
const options = {
  enableVibrateFallback: true,
  ignoreAndroidSystemSettings: false
};
<Tab.Screen
  name="Home"
  component={HomeStacks}
  listeners={() => ({
    tabPress: () => {
      ReactNativeHapticFeedback.trigger("impactLight",options)
    },
  })}
/>

0
投票

试试这个:

 Vibration.vibrate([100, 1000, 100, 1000]);

睡眠/100ms无振动

振动1000ms

睡眠/100ms无振动

振动1000ms

不要忘记导入:从'react-native'导入{Vibration};

© www.soinside.com 2019 - 2024. All rights reserved.