次の拡張機能を作成しましたUIView
。
import UIKit
extension UIView {
var frameHeight : CGFloat {
get {
return self.frame.size.height
}
set(newHeight) {
self.frame = CGRectMake(self.frame.origin.x, self.frame.origin.y,self.frame.size.width, newHeight)
}
}
}
次に、これを自分のメソッド内で使用しましたUIView
:
class MyView: UIView {
func updateHeight() {
self.frameHeight = 200.0
setNeedsDisplay()
}
}
コンパイルエラーが発生しました:
While emitting IR SIL function @_TFC15Simple15MyView10updateHeightfS0_FT_T_ for 'updateHeight' at /MyView.swift:88:5
<unknown>:0: error: unable to execute command: Segmentation fault: 11
<unknown>:0: error: swift frontend command failed due to signal (use -v to see invocation)
Command /Applications/Xcode6-Beta3.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift failed with exit code 254
行をコメントアウトするself.frameHeight = 200.0
と、コンパイルエラーはなくなりました。
バグですか?それとも私は何か間違ったことをしましたか?ありがとう。