gpt4 book ai didi

ios - UIAlertController,消除关闭时的动画?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:32:42 24 4
gpt4 key购买 nike

这是一个简单的操作表,

let choice = UIAlertController(title: "Choose", message: nil, preferredStyle: .actionSheet)

choice.addAction(UIAlertAction(title: "Camera", style: .default, handler: { _ in
self.happyCamera() }))

choice.addAction(UIAlertAction(title: "Album", style: .default, handler: { _ in
self.happyAlbum() }))

choice.addAction(UIAlertAction.init(title: "Cancel", style: .cancel, handler: nil))

somewhere?.present(choice, animated: false, completion: nil)

当操作表出现时(注意 present#animated 是 false)它只是点击屏幕,没有俗气的动画。

但是,当用户点击三个选项之一,或者点击“关闭”时,操作表会使用干酪动画离开屏幕。

(具体在 10.3 中,它会向下滑出屏幕。)

有没有办法关闭退出动画?

enter image description here


如果您子类化 UIAlertController...它不起作用?

正如 DS 在下面所建议的,您可以子类化 UIAlertController。

然而 - 奇怪的是 - 它什么都不做。这是一个测试

func _test() {

let msg = SuperiorUIAlertController(
title: "Hello", message: "Hello",
preferredStyle: UIAlertControllerStyle.alert)
msg.addAction(UIAlertAction(
title: "OK", style: UIAlertActionStyle.default,
handler: nil))

let win = UIWindow(frame: UIScreen.main.bounds)
let vc = UIViewController()
vc.view.backgroundColor = .clear
win.rootViewController = vc
win.windowLevel = UIWindowLevelAlert + 1
win.makeKeyAndVisible()
vc.present(msg, animated: false, completion: nil)
}

class SuperiorUIAlertController: UIAlertController {

override func dismiss(animated flag: Bool, completion: (() -> Void)? = nil) {

print("You should see this! \(flag)")
self.dismiss(animated: false, completion: completion)
}
}

事实上,文本“你应该看到这个”从未出现

最佳答案

我不想回答我自己的问题,但截至 2017 年底,没有办法。很奇怪吧?

希望这个事实对某人有所帮助。

关于ios - UIAlertController,消除关闭时的动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44675204/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com