在iPhone8类似矩形边缘设备,我需要一个底部按钮卡在底部边缘与尖锐的角落。在像iPhone12一样的曲线边缘设备中,我需要一个底部按钮,在右下角有一定的距离,并有一个角半径。
我怎样才能在故事板上管理它呢?请检查下面的图片,以更好地理解。


发布于 2021-04-22 07:39:42
据我所知,故事板没有直接的方法来实现这一点。如果我是你,我会
。
没有官方的API来检查设备是否有弯曲的边缘,但这是我的解决方案,所以如果有人知道更好的攻击,请告诉我。
extension UIDevice {
var iPhoneXOrAboveModel: Bool {
return UIScreen.main.nativeBounds.height >= 2436
}
}现在,您可以在视图控制器中使用这个扩展并限制按钮。
if UIDevice.current.iPhoneXOrAboveModel {
// Has curved edges
NSLayoutConstraint.activate([
button.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 20),
button.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: -20)
])
button.layer.cornerRadius = 12
} else {
// Has square edges
NSLayoutConstraint.activate([
button.leadingAnchor.constraint(equalTo: view.leadingAnchor),
button.trailingAnchor.constraint(equalTo: view.trailingAnchor)
])
}发布于 2021-04-22 07:47:24

https://stackoverflow.com/questions/67207796
复制相似问题