【问题标题】:UITableView - issue with background image size & positionUITableView - 背景图像大小和位置问题
【发布时间】:2017-02-19 03:28:30
【问题描述】:

当列表为空时,我想在 UITableView 中设置背景图像。我使用以下代码设置它。它在 iPhone 5 中可以正常显示。但在 iPhone 6 以后的设备中显示一些空间。

请帮忙。我是 iOS 开发新手。

@IBOutlet var tableView: UITableView!

let bgView = UIView(frame: CGRect(x: 0, y: 0, width: tableView.frame.size.width, height: tableView.frame.size.height))

let ivImageView = UIImageView(frame: CGRect(x: 0, y: 0, width: tableView.frame.size.width, height: tableView.frame.size.height))
ivImageView.image = image
ivImageView.tintColor = UIColor.green
ivImageView.contentMode = UIViewContentMode.scaleAspectFit
ivImageView.alpha = 0.05
bgView.addSubview(ivImageView)

tableView.backgroundView = bgView
tableView.backgroundView?.layoutIfNeeded()
tableView.backgroundView?.layoutSubviews()

【问题讨论】:

标签: ios swift uitableview uiimageview background-image


【解决方案1】:

您的代码绝对正确。

问题是,您可能在viewDidLoad(). 期间设置了背景图像,而是使用viewWillApper() 尝试。它将设置您的框架,与您的 tableview 的大小完全一致。

还有其他选择。在延迟一段时间后使用DispatchQueue.main.asyncAfter或使用performSelectorWithDelay重置图像帧。

如果你做不到,请告诉我。

【讨论】:

    猜你喜欢
    • 2013-02-09
    • 2017-01-04
    • 2021-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多