UNPKG

mao-rn-android-kit

Version:

为 React Native 开发 提供的一些Android原生模块/组件 (react native, CoordinatorLayout, AppBarLayout, TabLayout, NestedScrollView, PopupWindow)

33 lines (32 loc) 1.75 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const React = require("react"); const react_1 = require("react"); const react_native_1 = require("react-native"); const layout_1 = require("./layout"); const types_1 = require("./types"); const MaoKitsCoordinatorLayoutManager = react_native_1.UIManager.MaoKitsCoordinatorLayoutAndroid; const COMMAND_SET_SCROLLING_VIEW_BEHAVIOR = MaoKitsCoordinatorLayoutManager.Commands.setScrollingViewBehavior; const COMMAND_RESET_BEHOVIOR = MaoKitsCoordinatorLayoutManager.Commands.resetBehavior; class CoordinatorLayout extends react_1.PureComponent { componentDidMount() { layout_1.default.setChildrenLayoutParams(this, MaoKitsCoordinatorLayoutManager); } componentDidUpdate() { layout_1.default.setChildrenLayoutParams(this, MaoKitsCoordinatorLayoutManager); } render() { return (React.createElement(RCTCoordinatorLayout, Object.assign({}, this.props), this.props.children)); } setScrollingViewBehavior(view) { react_native_1.UIManager.dispatchViewManagerCommand(react_native_1.findNodeHandle(this), COMMAND_SET_SCROLLING_VIEW_BEHAVIOR, [react_native_1.findNodeHandle(view)]); } resetBehavior(appbar, nestedScrollEnabled = true, smoothly = false) { react_native_1.UIManager.dispatchViewManagerCommand(react_native_1.findNodeHandle(this), COMMAND_RESET_BEHOVIOR, [react_native_1.findNodeHandle(appbar), nestedScrollEnabled, smoothly]); } } CoordinatorLayout.propTypes = Object.assign({}, types_1.ViewGroupProperties); exports.default = CoordinatorLayout; const RCTCoordinatorLayout = react_native_1.requireNativeComponent('MaoKitsCoordinatorLayoutAndroid', CoordinatorLayout, { nativeOnly: {} });