Тип NSLayoutAnchor - PullRequest
       20

Тип NSLayoutAnchor

0 голосов
/ 05 сентября 2018

Неважно, что я пытаюсь, я не могу заставить вариации этого работать ... Что я не получаю?

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

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

Кажется, нет никакого способа определить класс якоря ..: (

1 Ответ

0 голосов
/ 05 сентября 2018

Я не думаю, что это именно то, что вы ищете, но я думаю, что-то вроде этого должно работать:

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

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

Я не слишком знаком с этой областью, но я думаю, что причина, по которой вы не можете вернуть NSLayoutAnchor, заключается в том, что этот класс является универсальным классом, а его подклассы - нет.

...