swift - NSLayoutAnchor 的类型

标签 swift nslayoutanchor

无论我尝试什么,我都无法让这个变体发挥作用...我没有得到什么?

func anchorType(for string:String) -> NSLayoutAnchor<AnyObject> {

    switch string {
    case "x":
        return NSLayoutXAxisAnchor
    case "y":
        return NSLayoutYAxisAnchor
    default:
        return NSLayoutDimension
    }
}

似乎没有办法确定 anchor 的类别..:(

最佳答案

我不认为这正是您正在寻找的东西,但我认为这样的东西应该有效:

func anchorType(for string:String) -> AnyClass {

    switch string {
    case "x":
        return NSLayoutXAxisAnchor.self
    case "y":
        return NSLayoutYAxisAnchor.self
    default:
        return NSLayoutDimension.self
    }
}

我对这个领域不太熟悉,但我认为你不能返回 NSLayoutAnchor 的原因是因为该类是通用类,而它的子类不是。

关于swift - NSLayoutAnchor 的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52178492/

相关文章:

ios - 扫描二维码经常崩溃-AVCaptureSession

ios - 在 CalendarKit 中创建新事件

Swift 常量 : Struct or Enum

ios - 如何在 swift 中定义类似 `UIView<UITableViewDelegate>`(oc 代码)的类型?

ios - 编程约束 - 使用布局 anchor 覆盖整个父 View

ios - tabBar.topAnchor 的奇怪布局

ios - WKWebview运行JavaScript

swift - 单元格的结构在 UIView.transition 之后被破坏

ios - 使用 NSLayoutAnchor 不好吗?

swift - 扩展 NSLayoutAnchor 编译错误