ios - 如何在 Interface Builder 中创建 1px 线?

标签 ios uikit interface-builder retina-display

请注意,我要制作一条 1px 的线,而不是 1pt 的线。这意味着无论屏幕比例如何,它都应为 1px(因此在 Retina 设备上为 0.5pt)。

我可以通过编程方式执行此操作,但我可以在 Interface Builder 中执行此操作吗?例如,我不能将 UIView 的高度设置为小于 1。

如果我可以在 IB 中做到这一点,那么我就不必在 awakeFromNib 中声明导出和手动设置框架。

最佳答案

以防万一其他人来到这里想知道如何以编程方式完成它,这里是你如何做的:

界面生成器

在 IB 中对所需 View 进行高度约束,并将常量设置为 1。

enter image description here

然后您需要按住 CTRL 并从约束中拖动到您的自定义 View 或 ViewController 中。

无论何时加载 Xib,无论是在 awakeFromNib 还是 viewDidLoad 中,您都需要将约束常量设置为显示的比例:

swift

onePixelViewHeightConstraint.constant = 1/UIScreen.main.scale//enforces it to be a true 1 pixel line

objective-C

self.onePixelViewHeightConstraint.constant = 1.f/[UIScreen mainScreen].scale;//enforces it to be a true 1 pixel line

享受

关于ios - 如何在 Interface Builder 中创建 1px 线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23666209/

相关文章:

ios - 如何在 Storyboard元素中使用预处理器宏?

ios - 没有 PHAsset 是否可以将照片存储在 iPhone 上?

ios - 使用 Ghost Localizable.strings, "real"一个被忽略

iphone - 为什么 NSIndexPath 不起作用?

swift - 为什么我的 tableView 没有推送到 tableView 内的详细信息 ViewController?

iphone - Interface Builder 将看不到操作方法

ios - 如何使用自动布局和大小类获取自定义 UITableviewCell 的宽度

ios - 如何在UIColor中获得随机的暖色/冷色?

swift - UISlider handle 在不同尺寸的 iPad 上改变宽度

swift - 自定义属性的可读显示 (IB) 名称