gpt4 book ai didi

ios - 为什么小于 1.0pts 的线条无法在非视网膜屏幕上正确呈现?

转载 作者:可可西里 更新时间:2023-11-01 03:07:09 26 4
gpt4 key购买 nike

self.layer.borderWidth = 0.5;

UIButtonUITextField 在视网膜屏幕上呈现良好,但在非视网膜屏幕上只有顶部和左侧边框呈现,而右侧和底部边框则呈现不渲染。

我认为它与屏幕的 dpi 和子点线的绘制方式有关,但可能有更好的解释。

问题:我想知道是否有可能在 borderWidth 设置为 的情况下在视网膜和非视网膜屏幕上按预期显示 UIView 的边框>0.5

最佳答案

如果您始终需要单个像素(而非点)线,则必须根据屏幕比例使用不同的边框宽度。

例如:

CGFloat scale = [[UIScreen mainScreen] scale];
if (scale == 2.0) {
// retina screen;
self.layer.borderWidth = 0.5;
} else {
// non-retina screen
self.layer.borderWidth = 1.0;
}

关于ios - 为什么小于 1.0pts 的线条无法在非视网膜屏幕上正确呈现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17075289/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com