如何在React Native中从底部将<View />滑入和滑出?

乔高

在React Native iOS中,我想像下图中那样滑入和滑出。

在下面的示例中,当按下一个按钮时,Payment Information视图从底部弹出,而当按下折叠按钮时,该视图回落并消失。

这样做的正确和正确方法是什么?

在此处输入图片说明

先感谢您!

编辑

在此处输入图片说明

艾哈迈德·哈达德(Ahmad Al Haddad)

基本上,您需要将视图绝对定位在屏幕底部。然后,将其y值转换为等于其高度。(子视图必须具有特定的高度才能知道要移动多少)

这是显示结果的游乐场:https : //rnplay.org/apps/n9Gxfg

代码:

'use strict';

import React, {Component} from 'react';
import ReactNative from 'react-native';

const {
  AppRegistry,
  StyleSheet,
  Text,
  View,
  TouchableHighlight,
  Animated
} = ReactNative;


var isHidden = true;

class AppContainer extends Component {
  constructor(props) {
    super(props);
    this.state = {
      bounceValue: new Animated.Value(100),  //This is the initial position of the subview
      buttonText: "Show Subview"
    };
  }


  _toggleSubview() {    
    this.setState({
      buttonText: !isHidden ? "Show Subview" : "Hide Subview"
    });

    var toValue = 100;

    if(isHidden) {
      toValue = 0;
    }

    //This will animate the transalteY of the subview between 0 & 100 depending on its current state
    //100 comes from the style below, which is the height of the subview.
    Animated.spring(
      this.state.bounceValue,
      {
        toValue: toValue,
        velocity: 3,
        tension: 2,
        friction: 8,
      }
    ).start();

    isHidden = !isHidden;
  }

  render() {
    return (
      <View style={styles.container}>
          <TouchableHighlight style={styles.button} onPress={()=> {this._toggleSubview()}}>
            <Text style={styles.buttonText}>{this.state.buttonText}</Text>
          </TouchableHighlight>
          <Animated.View
            style={[styles.subView,
              {transform: [{translateY: this.state.bounceValue}]}]}
          >
            <Text>This is a sub view</Text>
          </Animated.View>
      </View>
    );
  }
}

var styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: '#F5FCFF',
    marginTop: 66
  },
  button: {
    padding: 8,
  },
  buttonText: {
    fontSize: 17,
    color: "#007AFF"
  },
  subView: {
    position: "absolute",
    bottom: 0,
    left: 0,
    right: 0,
    backgroundColor: "#FFFFFF",
    height: 100,
  }
});

AppRegistry.registerComponent('AppContainer', () => AppContainer);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何让 RecyclerView 滑入和滑出屏幕?

来自分类Dev

滑动菜单,如何同时滑入和滑出?

来自分类Dev

如何在轻松的同时使徽标滑入和滑出页面?

来自分类Dev

如何使 css 响应式 topnav 滑入和滑出

来自分类Dev

如何像转盘一样将标签滑入和滑出

来自分类Dev

同时滑入和滑出

来自分类Dev

SwiftUI动画滑入和滑出

来自分类Dev

如何在React Native中传递View / Component的数组?

来自分类Dev

如何在 React Native 中滚动到 View?

来自分类Dev

使用jQuery将div滑入和滑出

来自分类Dev

jQuery:滚动时框的滑入和滑出

来自分类Dev

在单击链接时使内容滑入和滑出?

来自分类Dev

ToggleClass 与动画双向。菜单滑入和滑出

来自分类Dev

如何在React Native中支持Split View

来自分类Dev

Bootstrap 3模态-从底部和棍子滑入

来自分类Dev

如何在 React Native 中显示底部导航上方的组件?

来自分类Dev

jQuery滑入和滑出行为奇特,按钮消失

来自分类Dev

滑入和滑出过渡以向左滑动菜单

来自分类Dev

使用滑入和滑出动画进行子视图

来自分类Dev

SWIFT滑入和滑出一个对象

来自分类Dev

创建动画div,该div从侧面滑入和滑出

来自分类Dev

根据div id滚动位置滑入和滑出元素

来自分类Dev

在GridList中时,Material-ui卡组件的阴影和底部将被裁剪

来自分类Dev

如何在NativeScript中获得对self.view和self.view.frame的引用

来自分类Dev

如何在菜单下拉react-select中删除顶部和底部的填充?

来自分类Dev

如何在React中淡出和淡入?

来自分类Dev

jQuery 滑入滑出问题

来自分类Dev

如何在屏幕底部将android Textview元素居中

来自分类Dev

如何在React Native RCT_EXPORT_VIEW_PROPERTY宏中指定“整数数组”类型

Related 相关文章

热门标签

归档