2015-08-11 1 views
4

Я работаю над пользовательской клавиатурой, и если я включу этот код в свой класс я получил ошибку:Ошибка - Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc не удалось с кодом выхода 1

let isPad = UIDevice.currentDevice().userInterfaceIdiom == UIUserInterfaceIdiom.Pad 

Error - Command/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc failed with exit code 1 

мне нужен этот код, потому что, когда пользователь запускает iPhone приложение (например, Instagram) на IPAD, нужно загрузить iPhone клавиатуры пресет и использовать его геометрию. Я стараюсь ниже код, но это не решение:

если UI_USER_INTERFACE_IDIOM() == .Pad {

}

Так поделитесь пожалуйста, если кто-нибудь есть какие-либо решения.

Error screen shot

+1

У меня точно такая же проблема. Все еще нет решения. – Maria

+0

@Maria Я думаю, что UIDevice.currentDevice(). UserInterfaceIdiom == UIUserInterfaceIdiom.Pad не поддерживается типом класса UIInputViewController, он поддерживается классом UIViewController. Я все еще не получаю никакого решения для этого, но я использую другой метод, поскольку он может быть это полезно для вас переопределить func viewWillLayoutSubviews() { } этот метод дает мне точный размер клавиатуры по умолчанию в какой-то попытке, поэтому я использую его и делаю свой код в соответствии с ним .. – VSP

+0

Моя проблема в том, что я случайно оставил старый UI_USER_INTERFACE_IDIOM() == .Pad вместо правильного UIDevice.currentDevice() в одном файле. Я использовал xctool, чтобы найти https://github.com/facebook/xctool, потому что сообщение об ошибке xcode было не очень информативным. – Maria

ответ

3

Попробуйте это:

if UIDevice.currentDevice().userInterfaceIdiom == .Pad { 

    // iPad Stuff 
} 

else if UIDevice.currentDevice().userInterfaceIdiom == .Phone { 

    // iPhone Stuff 
} 

EDIT

Swift 3

if UIDevice.current.userInterfaceIdiom == .pad { 

    // iPad Stuff 
} 

else if UIDevice.current.userInterfaceIdiom == .phone { 

    // iPhone Stuff 
} 
+0

Я уже пробовал это, но у меня такая же ошибка – VSP

+2

Это сработало для меня. Я не знаю, почему эта проблема началась - раньше UI_USER_INTERFACE_IDIOM работал нормально. – Ian