2016-08-16 93 views
1

我有一些核心的圖形結構,即CGSize和中的CGRect斯威夫特一些擴展,這裏是什麼CGSize一個貌似....的CGRect並CGSize擴展從斯威夫特不可見在Objective-C

enum Orientation { 
     case Portrait 
     case Landscape 
     case Square 
    } 


extension CGSize { 

    /// Based on the size's dimensions, what orientation is it 
    var orientation: Orientation { 

     if width > height { 
      return .Landscape 
     } else if height > width { 
      return .Portrait 
     } else { 
      return .Square 
     } 
    } 

} 

我需要在Objective-C類中使用它們。我已經將Swift頭文件導入到這個類中,並且我寫的Swift的其他擴展正在這個類中工作。但是,這兩個是不可見的。我猜這是因爲這些不是類的擴展。有沒有辦法讓我的這些工作與我的Objective-C代碼?

回答

1

實際上這是不可能的,因爲OrientationCGSize不是類。 OrientationenumCGSizestruct

正如documentation所說,你不能在Objective-C中使用這些快速功能:Enumerations defined in Swift without Int raw value typeStructures defined in Swift