Я делаю приложение React-Native, и сценарий таков: Я хочу, чтобы пользователь мог панорамировать представление, но не полностью так, как он хочет. Я хочу, чтобы ограничивал количество просмотров при перетаскивании пользователем.React Native: Constraining Animated.Value
Я прочитал документацию как API PanResponder
, так и Animated
(несколько раз), но не может найти что-либо, что делает это, и я не могу найти кого-либо другого, который бы реализовал что-то подобное.
Сдерживание на мероприятии panresponder?
onPanResponderMove: Animated.event([null,{
dx: this.state.pan.x, //Some function here to constrain the value?
dy: this.state.pan.y
}]),
Ограничение при применении преобразований?
style = {
transform: {
transformX: ...,//Use interpolate to constrain the values somehow?
transformY: ...
}
}
Проверьте [Animated.Value] (https://facebook.github.io/react-native/docs/animated.html), это позволит вам контролировать любого «Анимация» принимает значения 0 - 1, но вы можете использовать ее для проверки специальных значений «MAX» и «MIN» для вашего вида. –
. Интерполируется, но я не думаю, что на самом деле это ограничивает значения, не так ли? Насколько я могу судить, он только перенаправляет их. – stinodes
интерполяция поддерживает ограничение с помощью экстраполяции. Из документов: Вы можете установить экстраполяцию, установив параметры экстраполяции, экстраполяции или экстраполяции. Значение по умолчанию расширяется, но вы можете использовать зажим для предотвращения превышения выходного значения outputRange. – David