跳到主要内容

ActionSheetIOS

显示原生的 iOS 操作表单组件。

示例

参考

方法

showActionSheetWithOptions()

tsx
static showActionSheetWithOptions: (
options: ActionSheetIOSOptions,
callback: (buttonIndex: number) => void,
);

显示一个 iOS 操作表单。options 对象必须包含以下一个或多个选项:

  • options (字符串数组) - 按钮标题列表 (必需)
  • cancelButtonIndex (整数) - 取消按钮在 options 中的索引
  • cancelButtonTintColor (字符串) - 用于更改取消按钮文本颜色的 颜色
  • destructiveButtonIndex (整数或整数数组) - 破坏性按钮在 options 中的索引
  • title (字符串) - 要显示在操作表单上方的标题
  • message (字符串) - 要显示在标题下方的消息
  • anchor (数字) - 操作表单应锚定的节点 (用于 iPad)
  • tintColor (字符串) - 用于非破坏性按钮标题的 颜色
  • disabledButtonIndices (数字数组) - 应禁用的按钮索引列表
  • userInterfaceStyle (字符串) - 用于操作表单的用户界面样式,可设置为 lightdark,否则将使用默认系统样式

回调函数接受一个参数,即选定项目的零基索引。

最小示例

tsx
ActionSheetIOS.showActionSheetWithOptions(
{
options: ['Cancel', 'Remove'],
destructiveButtonIndex: 1,
cancelButtonIndex: 0,
},
buttonIndex => {
if (buttonIndex === 1) {
/* destructive action */
}
},
);

dismissActionSheet()

tsx
static dismissActionSheet();

关闭最上层的 iOS 操作表单。如果不存在操作表单,将显示警告。


showShareActionSheetWithOptions()

tsx
static showShareActionSheetWithOptions: (
options: ShareActionSheetIOSOptions,
failureCallback: (error: Error) => void,
successCallback: (success: boolean, method: string) => void,
);

显示 iOS 分享表单。options 对象应包含 messageurl 中的一个或两个,还可以包含 subjectexcludedActivityTypes

  • url (字符串) - 要分享的 URL
  • message (字符串) - 要分享的消息
  • subject (字符串) - 消息的主题
  • excludedActivityTypes (数组) - 要从操作表单中排除的活动
注意

如果 url 指向本地文件,或者是一个 base64 编码的 URI,则它指向的文件将被加载并直接共享。这样,您可以分享图片、视频、PDF 文件等。如果 url 指向远程文件或地址,则必须符合 RFC 2396 中描述的 URL 格式。例如,没有正确协议 (HTTP/HTTPS) 的 Web URL 将不会被分享。

‘failureCallback’ 函数接受一个参数,即一个错误对象。该对象上定义的唯一属性是一个可选的 stack 属性,类型为 string

‘successCallback’ 函数接受两个参数:

  • 一个布尔值,表示成功或失败
  • 一个字符串,在成功的情况下,指示分享的方式