Ошибка команды /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 {

}

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

Снимок экрана с ошибкой


person VSP    schedule 11.08.2015    source источник
comment
У меня точно такая же проблема. Все еще нет решения.   -  person Maria    schedule 02.09.2015
comment
@Maria Я думаю, что UIDevice.currentDevice (). полезно для вас, чтобы переопределить func viewWillLayoutSubviews() {}, этот метод дает мне точный размер клавиатуры по умолчанию в некоторой попытке, поэтому я использую его и делаю свой код в соответствии с ним.   -  person VSP    schedule 02.09.2015
comment
Моя проблема заключалась в том, что я случайно оставил старый UI_USER_INTERFACE_IDIOM() == .Pad вместо правильного UIDevice.currentDevice() в одном файле. Я использовал xctool, чтобы найти этот github.com/facebook/xctool, потому что сообщение об ошибке xcode было не очень информативным.   -  person Maria    schedule 02.09.2015


Ответы (1)


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

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

    // iPad Stuff
}

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

    // iPhone Stuff
}

ИЗМЕНИТЬ

Свифт 3

if UIDevice.current.userInterfaceIdiom == .pad {

    // iPad Stuff
}

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

    // iPhone Stuff
}
person Brandon A    schedule 11.08.2015
comment
Это сработало для меня. Я понятия не имею, почему возникла эта проблема — раньше UI_USER_INTERFACE_IDIOM работал нормально. - person Ian; 24.12.2015