iOS 中现在可以看到新的“小而圆的”弹出窗口(例如:天气应用程序)可在最新的 UIKit 中使用吗?

问题描述 投票:0回答:2

下面的例子,

这种弹出样式现在是 iOS 中的标准吗? (也许作为新“弹出式按钮”的大量变体之一?)

我知道这里有些人足够聪明,可以检查应用程序并查看类是什么;我不能。

这是现在可用的标准界面元素,还是只是自定义编程?

跟踪 UIKit 中的可用内容是一项“全职工作”,在这种情况下我不知道答案。

ios swift uikit ios17
2个回答
1
投票

它是用

UIMenu
(主要起始类)制作的弹出按钮,可在 iOS 13+ 上使用(因为您的问题是关于 iOS 的)。

介绍WWDC 21:认识 UIKit 按钮系统(约 12 分钟)


0
投票

我的困惑是我太愚蠢了,没有意识到您可以(轻松地)将标准弹出窗口与任何按钮一起使用。 (不仅仅是 Xcode 标准选择中可用的两个。)

秘密就是

 showsMenuAsPrimaryAction = true

创建一个具有任何类型、样式、样式、颜色等的按钮(甚至是条形按钮),比如 IB。

只需这样做,

@IBOutlet weak var test: UIButton!
func setup() {
    test.showsMenuAsPrimaryAction = true
    

..并以通常的方式构建菜单,

    let hh = ["Cats", "Dogs", "Horsies", "Goldfish"]
    test.menu = UIMenu(children: hh.map({ h in
        return UIAction(title: h, image: UIImage(systemName: "eraser")) { _ in
            print("tapped \(h)")
        }
    }))
    test.forceSelectedIndex(0)
}

就是这样。

它可能会帮助任何人在这里谷歌搜索。

© www.soinside.com 2019 - 2024. All rights reserved.