我正在为要在Xcode中构建的游戏创建商店,该游戏使用SceneKit,用于叠加层的SpriteKit和用于商店的UIKit以及我可能创建的任何其他非叠加视图。我有9个按钮,所有按钮的默认大小为700x700,在情节提要中缩小为90x90。我正在尝试使所有9个像素都以3x3格式显示,该格式根据用户的屏幕大小调整和间隔。
注意:contentView是具有浅蓝色背景的UIView,其中包含我所有的按钮。
(图片1):我希望它在所有屏幕上都显示为什么样(减去蓝色轮廓): https://prnt.sc/ndzqbz
(图2)在我为其设计的设备(iPhone 7 Plus)上的外观:http://prntscr.com/ndzrkn
(图3)在另一台设备上的外观(I pad Pro 12.9inch 3rd gen): http://prntscr.com/ndzrrh
如何使图像2和3更接近图像1?
我看过大量的自动布局约束视频,遍及网络,却一无所获。每次尝试尝试进行操作时,图片3 甚至会更加混乱。 注意:图片3 是我以前所拥有的“干净”版本,它曾经在所有原本不应该使用的地方都有各种形状和大小的按钮。
我还尝试了在Swift 5.0中解决此问题的程序设计方法:
func setupButtons() {
player_button.frame = CGRect(x: contentView.self.frame.midX, y: contentView.self.frame.midY, width: 200, height: 200)
}
我想这样做是将按钮放在视图中间,并增加按钮的大小。它确实增加了按钮的大小,但在Ipad屏幕上将其放置在此处:http://prntscr.com/ndzxgo 这不是我想要的位于contentView中间的位置。 似乎已完成的工作是采用contentViews的原始大小并使用了该大小。我似乎也无法获得应用了约束的contentView的大小(我碰巧使我的contentViews约束在大多数情况下都起作用。)
•我试图调整图像的大小并将其放入堆栈视图 -我无法正常工作
感谢您的任何反馈!
答案 0 :(得分:0)
As suggested in comment with the help of CollectionView also possible. But I have tried with UIButton with size 90x90 and placed in the center of the view.
below are the constraint added to the button
Align Center X to : Superview
Align Center Y to : Super view
width equals : 90
Height equals : 90
and add the remaining button.
Please find the below link for adding constraints to all button.
Below are the screen shots.
ipad https: https://prntscr.com/ne175m
iphone 5s . https://prntscr.com/ne174t
iphone 7 plus https://prntscr.com/ne175x
constraints https://prntscr.com/ne10vl
Please change UIButton background images as per your requirement