首页 > 解决方案 > 如何创建一个完全填充设备屏幕的矩形

问题描述

我正在尝试创建一个填充设备屏幕的矩形。我试过这个:

Rectangle()
            .fill(Color.green)
            .frame( height: UIScreen.main.bounds.size.height)
            .frame( width: UIScreen.main.bounds.size.width)
            .edgesIgnoringSafeArea(.all)


使用这个扩展:

extension UIScreen{
   static let screenWidth = UIScreen.main.bounds.size.width
   static let screenHeight = UIScreen.main.bounds.size.height
   static let screenSize = UIScreen.main.bounds.size
}

但是,高度有点太小了: 在此处输入图像描述

我不知道为什么。

标签: swiftxcodeswiftui

解决方案


如果您正在填充屏幕,为什么不Color设置View?

struct ContentView: View {
    var body: some View {
        Color.green
            .edgesIgnoringSafeArea(.all)
    }
}

Views您可以使用以下方法在其上堆叠其他ZStack

struct ContentView: View {
    var body: some View {
        ZStack {
            Color.green
                .edgesIgnoringSafeArea(.all)

            // Other Views on top here
        }
    }
}

推荐阅读