使用AlertIOS,您可以从我的观察中指定以下按钮样式:


"default":蓝色,普通文本
"cancel":蓝色,粗体文本
"destructive":红色,普通文本


我假设此命名约定与本机UIAlertView样式类相对应,对吗?对于我的应用中的警报,我想强调带有粗体和蓝色文本的积极操作,所以对这些操作设置为“取消”样式属性感到很奇怪。是我还是“取消”风格的用词不当?

AlertIOS.prompt("Enter a new name", null, [
  {
    text: "Update",
    style: "cancel",
    onPress: (name) => { this.updateName(name); }
  },
  {
    text: "Cancel",
    style: "destructive"
  }
]);

最佳答案

此命名约定与UIAlertView(已过时)无关,而是与它的替换-iOS8中引入的UIAlertController无关。

使用UIAlertView而不是使用UIAlertController时指定按钮标题,而是添加操作。每个动作都有其“动作样式”(默认/取消/破坏性),在警报中将其转换为具有由字体和颜色定义的相应样式的按钮。

关于取消样式的Apple文档指出:


  应用指示操作取消操作的样式,并
  保持不变


我猜苹果认为这种风格强调了这一操作将“使事情保持不变”的事实。也许向用户强调这是他的“出路”,所以他们使它对用户更加突出。

关于javascript - React-Native AlertIOS风格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34751179/

10-10 01:20