前提・実現したいこと
画面の上にはNabigationbar、下にはtoolbarを使用しているのですが、この二つのbarに挟まれたスペースの真ん中に画像の中心をもってきて、画像を貼り付けたいと思っています。
iphone6sやiPhone8には適用させることができたと思うのですが、
iPhoneXに対してなかなか上手く真ん中に配置できないでいます。
iPhoneXで実行してみると、貼り付けたい画像が真ん中ではなく下の方に寄ってしまいます。
ご教授よろしくお願いいたします。
該当のソースコード
画像は、できる限り画面いっぱいに表示させます。
swift
1 2 // ステータスバーの高さを取得する 3 let statusBarHeight = UIApplication.shared.statusBarFrame.size.height 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 8 // Screen Size の取得 9 screenWidth = self.view.bounds.width 10 screenHeight = self.view.bounds.height 11 12 //画像の比率が210:148 13 let imageHeight = screenWidth * 210 / 148 14 let imagerect:CGRect = CGRect(x:0, y:0, width:screenWidth, height:imageHeight) 15 16 // ImageView frame をCGRectで作った矩形に合わせる 17 getimage.frame = imagerect; 18 19 // 画像の中心をスクリーンのほぼ中心位置に設定 20 getimage.center = CGPoint(x:screenWidth/2, y:(screenHeight-statusBarHeight-88)/2+statusBarHeight+44) 21 22 //ステータスバーの高さが20pt 23 //Navigationbar,toolbarの高さは44ptらしい 24 25 26 // view に ImageView を追加する 27 self.view.addSubview(getimage) 28} 29 30
補足情報(FW/ツールのバージョンなど)
Swiftのversionは4.1.2
Xcodeのversionは9.4.1
回答1件
あなたの回答
tips
プレビュー