模态框
Modal 组件是一种在封闭视图上方呈现内容的基本方式。
示例
参考
属性
View 属性
继承 View 属性。
animated
已弃用。 使用
animationType属性代替。
animationType
animationType 属性控制模态框的动画方式。
可能的值:
slide从底部滑入fade淡入视图none无动画出现
| 类型 | 默认值 |
|---|---|
enum('none', 'slide', 'fade') | none |
backdropColor
模态框的 backdropColor(或模态框容器的背景颜色)。如果未提供且 transparent 为 false,则默认为 white。如果 transparent 为 true,则被忽略。
| 类型 | 默认值 |
|---|---|
| 颜色 | white |
hardwareAccelerated 安卓
hardwareAccelerated 属性控制是否强制底层窗口进行硬件加速。
| 类型 | 默认值 |
|---|---|
| bool | false |
navigationBarTranslucent 安卓
navigationBarTranslucent 属性决定你的模态框是否应该位于系统导航栏下方。但是,也需要将 statusBarTranslucent 设置为 true 才能使导航栏半透明。
| 类型 | 默认值 |
|---|---|
| bool | false |
onDismiss iOS
onDismiss 属性允许传递一个函数,该函数将在模态框被关闭后调用。
| 类型 |
|---|
| function |
onOrientationChange iOS
当模态框显示时方向发生变化,会调用 onOrientationChange 回调。提供的方向仅为 'portrait' 或 'landscape'。此回调也会在初始渲染时调用,无论当前方向如何。
| 类型 |
|---|
| function |
allowSwipeDismissal iOS
控制在 iOS 上是否可以通过向下滑动手势关闭模态框。
这要求你实现 onRequestClose 属性来处理关闭。
| 类型 | 默认值 |
|---|---|
| bool | false |
onRequestClose
onRequestClose 回调在用户在 Android 上点击硬件返回键或在 Apple TV 上点击菜单键时调用。由于此属性是必填的,请注意只要模态框打开,BackHandler 事件就不会被发出。
在 iOS 上,当使用拖动手势关闭模态框且 presentationStyle 为 pageSheet 或 formSheet 时,会调用此回调。当启用 allowSwipeDismissal 时,此回调将在关闭模态框后被调用。
| 类型 |
|---|
| function 必填 安卓 TV function iOS |
onShow
onShow 属性允许传递一个函数,该函数将在模态框显示后调用。
| 类型 |
|---|
| function |
presentationStyle iOS
presentationStyle 属性控制模态框如何出现(通常在较大的设备上,如 iPad 或 plus 尺寸的 iPhone)。详见 https://developer.apple.com/reference/uikit/uimodalpresentationstyle。
可能的值:
fullScreen完全覆盖屏幕pageSheet覆盖居中的纵向宽度视图(仅在较大设备上)formSheet覆盖居中的窄宽度视图(仅在较大设备上)overFullScreen完全覆盖屏幕,但允许透明
| 类型 | 默认值 |
|---|---|
enum('fullScreen', 'pageSheet', 'formSheet', 'overFullScreen') | 如果 transparent={false} 则为 fullScreen如果 transparent={true} 则为 overFullScreen |
statusBarTranslucent 安卓
statusBarTranslucent 属性决定你的模态框是否应该位于系统状态栏下方。
| 类型 | 默认值 |
|---|---|
| bool | false |
supportedOrientations iOS
supportedOrientations 属性允许模态框旋转到任何指定的方向。在 iOS 上,模态框仍然受限于 app 的 Info.plist 中 UISupportedInterfaceOrientations 字段指定的内容。
当使用
pageSheet或formSheet的presentationStyle时,此属性将被 iOS 忽略。
| 类型 | 默认值 |
|---|---|
枚举数组 ('portrait', 'portrait-upside-down', 'landscape', 'landscape-left', 'landscape-right') | ['portrait'] |
transparent
transparent 属性决定你的模态框是否将填充整个视图。将其设置为 true 将在透明背景上渲染模态框。
| 类型 | 默认值 |
|---|---|
| bool | false |
visible
visible 属性决定你的模态框是否可见。
| 类型 | 默认值 |
|---|---|
| bool | true |