Apple が作成したキーボード管理ドキュメントのコードをアプリに取り込もうとしています。これまでのところ、Objective-C を Swift に解析できましたが、問題が発生している行が 1 つあります。ここにコンテキストがあります(最後の行はエラーが発生した場所です):
func keyboardWasShown(aNotification: NSNotification) {
let info = aNotification.userInfo as NSDictionary!
let kbSize = (info[UIKeyboardFrameBeginUserInfoKey] as? NSValue)?.CGRectValue()
let contentInsets = UIEdgeInsetsMake(0.0, 0.0, kbSize!.height, 0.0)
scrollView.contentInset = contentInsets
scrollView.scrollIndicatorInsets = contentInsets
let aRect = view.frame
aRect.size.height -= kbSize!.height //This line gives me trouble.
}
その行で、「タイプ '(CGFloat, CGFloat)' の引数リストで '-=' を呼び出すことはできません」というエラー メッセージが表示されます。この問題を解決するための回避策はありますか、それとも私が間違っていることはありますか?
注意: 両方を float にキャストしようとしましたが、「型 '($T4, $T9)' の引数リストで 'init' を呼び出せません」というエラーが表示されます。さまざまな変数で float としてキャストしてからそれらを減算すると、「タイプ '(Float, Float)' の引数リストで '-=' を呼び出すことはできません」というエラーが表示されます。