ios - variable value causing error: IR generation failure program too clever -


here simple code causing problem:

class coreviewcontroller: uiviewcontroller {     private let ispad = ui_user_interface_idiom() == .pad } 

following erorr message

<unknown>:0: error: ir generation failure: program clever: variable collides existing symbol objc_class_$_uidevice

no error, if remove ui_user_interface_idiom() == .pad

any thoughts?

ui_user_interface_idiom not work in swift, it's objective-c macro.

solution

option 1. use uidevice.currentdevice().userinterfaceidiom instead.

switch uidevice.currentdevice().userinterfaceidiom {     case .phone:         // it's iphone     case .pad:         // it's ipad     case .unspecified:         // undefined     } 

option 2. request uitraitcollection instance , check idiom (recommended)

let deviceidiom = uiscreen.mainscreen().traitcollection.userinterfaceidiom  switch (deviceidiom) {  case .pad:         // it's ipad case .phone:         // it's iphone case .tv:          // apple tv default:         // undefined     } 

Comments

Popular posts from this blog

c# - How Configure Devart dotConnect for SQLite Code First? -

java - Copying object fields -

c++ - Clear the memory after returning a vector in a function -