首页 > 解决方案 > UIPickerView 中的 UILabel 上的额外空间

问题描述

我有一个 UIPickerView 组件,当我需要它时我会使用它——pickerView 有一个 viewModel,所以我可以注入一个值数组,然后显示它。没有什么很复杂的,只是在一个视图中的一个pickerView,在标题中有一些按钮来取消或确认选择。

在此处输入图像描述

您现在可以看到我当前的问题。UIPickerTableViewTitledCell 包含一个 UILabel ,由于某种原因它没有对齐到左边 - 有一个小间隙。这很奇怪,因为它发生在我设置固定组件宽度(如上)以及我将组件设置为屏幕宽度时。

在此处输入图像描述

我努力了:

这些都没有做任何与您期望的特殊或不同的事情。

我已经包含了 xib 文件的图像,其中包含对 pickerView 的约束:

在此处输入图像描述

我的最终解决方案可能是逐步重新创建组件,以查看问题是否在特定时间后出现,但理想情况下,我想了解为什么会发生这种情况,而不仅仅是消失。

标签: iosswiftuikituipickerview

解决方案


看起来您的选择器视图对于屏幕来说太宽了。默认情况下,当您使用 时,生成的标签两边titleForRow的边距相同,如下所示:

在此处输入图像描述

我们没有看到您的选择器视图右侧的边距这一事实表明您的选择器视图的右侧不在屏幕右侧的某个位置。无论屏幕大小如何,都使用自动布局约束来正确定位选取器视图。


推荐阅读