onPanResponderRelease не работает на Android - PullRequest
0 голосов
/ 18 февраля 2020

Может кто-нибудь, пожалуйста, посмотрите на мой код. Я также пытался с onPanResponderEnd, это проблема еще не решена, или я делаю это неправильно.

// animation

const [anim] = useState(new Animated.ValueXY()) 

// panresponder

const [pan] =    useState(PanResponder.create({    
                        onStartShouldSetPanResponder: (evt, gestureState) => true,
                        onPanResponderMove: (event,gesture)=>{

                    console.log("move")

      },onPanResponderRelease: (evt, gestureState) => {
       console.log("release")
       },


     })) 

// передача анимированного представления в плоский список

       return (forYouNews.length==0?<SkeletonLoading /> : 
       <Animated.View    {...pan.panHandlers} style={anim.getLayout()}>
       <FlatList style={{backgroundColor:"white"}} keyExtractor={(list)=>list.title} data={forYouNews}
       renderItem={({item,index })=>{ 
  return <Card>    <View style={styles.textView}>    <Text style={{fontSize:12,color:"rgb(29, 132, 242)"}}>{index+1 +".    "}</Text>  
  </View>    <View>
<Image style={styles.img} source={{uri:item.urlToImage==null?oimageicon:item.urlToImage}}></Image>
</View>
   </View>     </Card>

    }}
     > </FlatList>  </Animated.View>
   ) }

1 Ответ

0 голосов
/ 18 февраля 2020

ПРИМЕЧАНИЕ:

  • Перед публикацией любого вопроса по stackoverflow, пожалуйста, будьте внимательны. Прежде всего, дайте больше информации о вашем вопросе. После этого поста затронутый вопрос или проблема, имеющая только кодовую базу. Не помещайте весь код вашего файла, включая таблицу стилей. На ваш вопрос будет легче ответить, чем на этот. :)

РЕШЕНИЕ:

Для правильной работы используйте onPanResponderEnd вместо onPanResponderRelease.

Также, если мы все еще хотим использовать onPanResponderRelease, тогда мы должны разрешить запрос на прекращение:

...