如何设置背景显示全屏?

Posted

技术标签:

【中文标题】如何设置背景显示全屏?【英文标题】:how can I setting background show full screen? 【发布时间】:2021-10-17 14:12:44 【问题描述】:

如何设置背景全屏显示?

当我使用这段代码时,我可以设置全屏

private let usernameEmailField: UITextField = 
        let field = UITextField()
        field.placeholder = "email"
        field.returnKeyType = .next
        field.leftViewMode = .always
        field.leftView = UIView(frame: CGRect(x:0, y:0, width: 10, height: 0))
        field.autocapitalizationType = .none
        field.autocorrectionType = .no
        field.layer.masksToBounds = true
        field.layer.cornerRadius = Constants.cornerRadius
        field.backgroundColor = .secondarySystemBackground
        field.layer.borderWidth = 1.0
        field.layer.borderColor = UIColor.secondaryLabel.cgColor
        return field
    ()

private let headerView: UIView = 
    let header = UIView()
    header.clipsToBounds = true
    let backgroundImageView = UIImageView(image: UIImage(named: "camping_background"))
    header.addSubview(backgroundImageView)
    return header
()

headerView.frame = CGRect(
    x: 0,
    y: 0.0,
    width: view.width,
    height: view.height
)
usernameEmailField.frame = CGRect(
    x: 25,
    y: headerView.botoom + 10,
    width: view.width - 50,
    height: 52.0
)

但如果我设置height: view.height 我无法显示我的文本字段。那么如何修改呢?

headerView.frame = CGRect(
    x: 0,
    y: 0.0,
    width: view.width,
    height: view.height
)

usernameEmailField.frame = CGRect(
    x: 25,
    y: headerView.botoom + 10,
    width: view.width - 50,
    height: 52.0
)

passwordField.frame = CGRect(
    x: 25,
    y: usernameEmailField.botoom + 10,
    width: view.width - 50,
    height: 52.0
)


如果我使用height: view.height/3.0,如果可以显示文本字段,但背景不是全屏

我希望我能像这样展示,这是我的android页面。

所以,如果我不使用情节提要,如何在我的 LoginViewController 中进行设计

【问题讨论】:

【参考方案1】:

看看这里的代码:

headerView.addSubview(backgroundImageView)

...

headerView.botoom + 10,

您正在垂直堆叠视图和背景!

但是

您应该将图像设置在文本字段后面(而不是在它们上方)

这是您的视图层次结构的样子:

- Main View
    - Main Content 
        - Logo image view
        - User name text field
        - Password text field
        - Login button
        - Create account button
    - Background image view

如您所见,Background image view 在其他内容的下方

请注意,不需要对内容进行分组来布局视图,但它是一种非常有用的分离组件的方法

【讨论】:

怎么修改?因为我是初学者

以上是关于如何设置背景显示全屏?的主要内容,如果未能解决你的问题,请参考以下文章

如何将网页CSS背景图高斯模糊且全屏显示

css怎么让网页各屏背景全屏显示

css 如何让图片全屏的问题

css背景图片如何设置全屏??

如何把视频设置成空间主页背景,全屏播放那种!

swift:如何使用 InfiniteScrolling 设置 UITableViewCell 显示全屏(允许分页)