never_give_up
never_give_up

Reputation: 812

Determine touch side in react-native

I'm trying to make a touch system like Instagram in react-native. How can I determine if the user has touched on the right or left side of the screen? Is it possible to use swipe without extraneous libraries?

Upvotes: 1

Views: 285

Answers (1)

You can get the touch coordinates like this:

<View onTouchStart={(e) => {console.log('touchMove',e.nativeEvent)}} />

So you can define on a function it's limits.

Or, you can do it the "Bad way", That would be using 2 transparent touchable views (touchable-opacity, pressable, touchablehighlight) side by side, each one taking half of the screen.

like this (I didn't tested it):

<View style={{flexDirection: 'row', position: 'absolute', flex: 1}}>
  <touchableOpacity style={{flex: 1}} onPress={() => console.log('left side clicked')}>
  </touchableOpacity>

  <touchableOpacity style={{flex: 1}} onPress={() => console.log('right side clicked')}>
  </touchableOpacity>
</View>

Upvotes: 1

Related Questions