-1

我正在制作一个应用程序并想创建一个自定义警报。我找到了以下方法:

  1. 在故事板中创建一个视图控制器并设置其标识符。
  2. 将其背景设置为清除。
  3. 在其中创建一个视图并设置所有按钮和标签。
  4. 像这样从另一个控制器调用它:

    let alertViewController = self.storyboard.instantiateViewControllerWithIdentifier("alertViewController") as! AlertViewController
    
    self.presentViewController(alertViewController, animated: true, completion: nil)
    

但我想要做的是,同时呈现多个警报,如下所示:

在此处输入图像描述

我对此进行了搜索,但只找到了在响应第一个警报时显示第二个警报的方式,但不是同时显示。我怎样才能实现所附图像中显示的内容?

4

2 回答 2

1

看起来这是一个模态 ViewController,其背景为 UIVisualEffectView,因此背景模糊。然后,您需要创建一组警报消息,为每条消息添加一个带有该消息的警报视图到视图控制器。每个消息视图都应该有约束宽度常数、高度常数、centerX 到 superview 和 centerY 到 superview。然后,您可以设置每个视图的变换以根据其在消息数组中的索引将其缩小并向上移动。像 yOffset = (messages.count - index) * 间距和比例 = exp(0.95, (messages.count - index))。前面的消息具有用于其变换的标识矩阵。当您关闭消息时,会为变换更改设置动画,因此它们都会向上和向下滑动。

于 2017-11-26T15:53:55.210 回答
0

是否有同时显示的警报数量的最大数量?如果有,有多少?

我建议让它不使用UIViewController但更容易:使用UIView. 您可以将它们全部显示在您当前的 ViewController 上。

如何创建自定义UIView链接

希望能帮助到你。

于 2017-11-26T15:09:19.687 回答