下面是我在SwiftUI中创建View的代码,我想把我的欢迎按钮放在屏幕底部,如下图所示。
struct welcomeViewControllerView: View {
var body: some View {
Text("Welcome")
.font(.system(size: 20, design: .rounded))
.padding(.leading)
.multilineTextAlignment(.center)
.background(
Image("splashBackground")
.resizable()
.edgesIgnoringSafeArea(.all)
.frame(width: UIScreen.main.bounds.width, height: UIScreen.main.bounds.height))
Button(action:{print("button pressed")})
{
Text("Continue")
.font(.system(size: 20, design: .rounded))
.foregroundColor(.black)
.frame(width: 300, height: 50, alignment: .center)
.background((Image("buttonImage")).resizable().frame(width: 300, height: 50, alignment: .center))
}
}
}
class welcomeViewController: UIHostingController<welcomeViewControllerView> {
required init?(coder: NSCoder)
{
super.init(coder: coder,rootView: welcomeViewControllerView());
}
override func viewDidLoad()
{
super.viewDidLoad()
view.backgroundColor = .white
}
}
我怎样才能把我的按钮放在屏幕的底部?我把屏幕贴在下面。我对使用SwiftUI还很陌生。
3条答案
按热度按时间plupiseo1#
结果:
ltqd579y2#
您的问题包含背景图片,下面的代码使用ZStack和Spacer来获得下面有背景的布局。Spacer绝对是您水平或垂直推送内容的朋友。
对于背景,因为它主要是黑色的,我使用Color.black来绘制整个屏幕,并假设您可以使用较小的图像作为徽标。这可以让您发布一个不会扭曲的小图像。分离屏幕颜色还可以让您匹配设备的亮/暗模式设置。如果感兴趣,请参阅Color(UIColor.systemBackground)和@Environment(.colorScheme)。
上面让你下面:Layout with bkg using ZStack and Spacer
pgky5nke3#
使用safeAreaInset。