Добрый день всем.Я создаю enum
, чтобы получить разрешение экрана, когда я предоставляю тип iDevice (номера размеров экрана здесь не соответствуют действительности).У меня есть код, работающий, когда я не использую функцию enum
, но я бы предпочел использовать функцию enum
, чтобы держать вещи в чистоте и вместе.Код, который у меня есть, для использования функции enum
следующий:
enum iDeviceType {
case iPhone(String)
case iPad(String)
...
func screenSize()->(Int,Int){
var myModel: (Int, Int)
switch ????? {
case .iPhone(let model):
switch model {
case "XR" : myModel = (width: 400, height: 612)
case "6" : myModel = (width: 465, height: 712)
case "6Plus" : myModel = (width: 465, height: 912)
...
default: myModel = (width: 365, height: 512)
}
case .iPad(let model):
switch model {
case "Air 1gen" : myModel = (width: 365, height: 512)
case "Air 2gen" : myModel = (width: 405, height: 565)
...
default: myModel = (width: 365, height: 512)
}
default:
print("not an iOS device")
}
return myModel
}
}
let myModel = iDeviceType.iPhone("XR").screenSize()
print(myModel.height)
Последние две строки кода - это способ, которым я хотел бы вызвать функцию enum
иполучить результат обратно.
Что мне не хватает?Я попытался self
, под вопросительными знаками, получить текущий iDeviceType
, но не могу заставить его работать.
Какие-нибудь предложения, чтобы сделать это более ясным?Я использую Swift 5.