跳到主要内容
版本:0.81

ActionSheetIOS

显示 iOS 原生的 Action Sheet 组件。

示例

参考

方法

showActionSheetWithOptions()

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

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

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

callback 函数接受一个参数,即所选项的从零开始计数的索引。

最小示例:

React TSX
ActionSheetIOS.showActionSheetWithOptions(
{
options: ['取消', '移除'],
destructiveButtonIndex: 1,
cancelButtonIndex: 0,
},
buttonIndex => {
if (buttonIndex === 1) {
/* 危险操作 */
}
},
);

dismissActionSheet()

React TSX
static dismissActionSheet();

关闭当前显示的最上层 iOS 操作表,如果没有显示操作表,则会显示警告。


showShareActionSheetWithOptions()

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

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

  • url(string)- 要分享的 URL
  • message(string)- 要分享的消息
  • subject(string)- 消息的主题
  • excludedActivityTypes(array)- 要从 ActionSheet 中排除的活动

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

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

successCallback 函数接受两个参数:

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