私はのUITextFieldを中心にしようとしています、これは私のコードです:センターUITextFieldの
import SpriteKit
import GameplayKit
import UIKit
class GameScene: SKScene {
var sampleTextField = UITextField()
override func didMove(to view: SKView) {
let mainView = UIView(frame: CGRect(x: 0, y: 0, width: self.size.width, height: self.size.height))
view.addSubview(mainView)
sampleTextField = UITextField(frame: CGRect(origin: mainView.center, size: CGSize(width: 200, height: 20)))
sampleTextField.placeholder = "Enter text here"
sampleTextField.font = UIFont.systemFont(ofSize: 15)
sampleTextField.borderStyle = UITextBorderStyle.roundedRect
sampleTextField.autocorrectionType = UITextAutocorrectionType.no
sampleTextField.keyboardType = UIKeyboardType.default
sampleTextField.returnKeyType = UIReturnKeyType.done
sampleTextField.clearButtonMode = UITextFieldViewMode.whileEditing;
sampleTextField.contentVerticalAlignment = UIControlContentVerticalAlignment.center
mainView.addSubview(sampleTextField)
}
}
しかし、私はそれが画面の外にあると思うので、UITextFieldには表示されませんので、どのように私はそれを中央にできましたスクリーン? CGRect
のorginが左上に常にある
sampleTextField.center = CGPoint(x: value1, y: value2)
私はSpriteKitを使ったことがありませんが、あなたのコードではautolayoutを使用していますか? –
いいえ私は自動レイアウトを使用していません –
おそらく、あなたは関数の先頭にデバッグポインタを置いて、関数が呼び出されたときにSKViewのサイズを調べて、SKViewがされていないことを確認できますまだ適切に配置されています。 –