可触摸和可触摸不透明度之间的区别

时间:2020-07-09 08:27:08

标签: javascript reactjs react-native

随着react native版本0.63的更新,出现了新的组件。有经验的人可以解释PressableTouchableOpacity有何不同以及何时使用它们时更好。

2 个答案:

答案 0 :(得分:11)

Pressable是RN 0.63的新介绍,在此之前,Touchable Opacity是用于包装一个或多个相似组件的最常用组件。

它们的基本功能相同,可以使文本/图像可点击并与用户互动。

但是使用Pressable,您可以使用许多新的道具,例如:

HitRect,这是一项很酷的功能,符合文档规定:

手指不是最精确的乐器,通常用于 用户不小心激活了错误的元素或错过了 激活区域。为了帮助您,Pressable有一个可选的HitRect 用于定义触摸可以从包装纸上移开的距离 元件。印刷可以在HitRect内的任何地方开始。

显然,这是我们用于hitslop的更好的替代方法,这里更加精确,您可以定义该区域。它也不会干扰子组件/其他组件的Z-index。

因此,基本上,您可以获得按钮的所有功能,具有很酷的新道具的touchableOpacity。请检查他们的文档:rn-pressable

Hopeit助您一臂之力

答案 1 :(得分:1)

Pressable这是清除您的疑问的图片。

工作原理 在由

包裹的元素上

可按下

onPressIn在激活按下时被调用。 取消按下手势时会调用onPressOut。

按下onPressIn之后,将发生以下两种情况之一:

  1. 此人将移开手指,先触发onPressOut,再触发onPress。
  2. 如果该人离开手指的时间超过370毫秒,则会触发onLongPress。 (当他们松开手指时,onPressOut仍然会触发。)

有关更多详细信息,请参阅documentation