Xcode - 向 UITableView 添加约束,使其适合所有屏幕尺寸
Xcode - Adding constraints to UITableView so that it fits all screen sizes
我已经阅读了很多教程并观看了很多关于在 Xcode 中使用约束的视频。出于某种原因,我仍然缺少使用户界面看起来适合所有屏幕尺寸所必需的某些方面。
目前,我在视图控制器上放置了一个 UITableView。视图控制器设置为 "Inferred" 大小,我在右侧的 Assistant Editor Preview 中打开了所有不同大小的设备,以便我可以查看更改。我在尝试针对不同的屏幕尺寸设置正确的约束时遇到了多个问题。
问题 1:UITableView 的宽度设置为 600。这会导致 iPad 预览中 table 视图右侧的死 space,并导致 UITableView在较小的设备上延伸太远。如果我缩小 table 视图的宽度使其适合所有屏幕尺寸的预览,然后通过指定 0 将 table 视图的左右边缘固定到 Superview 的边缘并取消选中限制边距,我在预览中看到的结果是整个 table 视图从每个设备尺寸中完全消失。我对此感到惊讶,因为我认为通过将 table 视图固定到边缘,它会使 table 视图适合每个屏幕。
问题 2:(这与上面的问题 1 完全不同。)在这种情况下,我将 table 视图的大小保留为 600,并且只为内部组件指定了约束table 视图中包含的单元格。在这种情况下,table 视图对于 iPad 尺寸仍然略微不够宽,并且它在较小的设备上延伸得太远,这使得单元格中的组件被截断并偏离中心。
我主要在设置任意宽度、任意高度的 Storyboard 中工作。但是,如果我将设置更改为紧凑宽度、任意高度,我可以更改约束以更好地适应较小的设备,但在 5.5 英寸屏幕和较小设备之间工作仍然存在问题。
我想让我的 UITableView 一直延伸到每个设备的边缘,我想让单元格内部的视图保持居中,并在每个设备上保持它的相对大小。有没有人对我如何做到这一点有任何建议?
如果你想让你的表格视图 "fill" 整个屏幕(与设备无关),你唯一要做的就是将它的 4 个边缘(顶部、左侧、底部、右侧)固定到它的superview(在你的例子中是 viewcontrollers 视图),常量为 0。
您没有指定特定的宽度(如您的情况下的 600)或高度。
祝你好运:)
我已经阅读了很多教程并观看了很多关于在 Xcode 中使用约束的视频。出于某种原因,我仍然缺少使用户界面看起来适合所有屏幕尺寸所必需的某些方面。
目前,我在视图控制器上放置了一个 UITableView。视图控制器设置为 "Inferred" 大小,我在右侧的 Assistant Editor Preview 中打开了所有不同大小的设备,以便我可以查看更改。我在尝试针对不同的屏幕尺寸设置正确的约束时遇到了多个问题。
问题 1:UITableView 的宽度设置为 600。这会导致 iPad 预览中 table 视图右侧的死 space,并导致 UITableView在较小的设备上延伸太远。如果我缩小 table 视图的宽度使其适合所有屏幕尺寸的预览,然后通过指定 0 将 table 视图的左右边缘固定到 Superview 的边缘并取消选中限制边距,我在预览中看到的结果是整个 table 视图从每个设备尺寸中完全消失。我对此感到惊讶,因为我认为通过将 table 视图固定到边缘,它会使 table 视图适合每个屏幕。
问题 2:(这与上面的问题 1 完全不同。)在这种情况下,我将 table 视图的大小保留为 600,并且只为内部组件指定了约束table 视图中包含的单元格。在这种情况下,table 视图对于 iPad 尺寸仍然略微不够宽,并且它在较小的设备上延伸得太远,这使得单元格中的组件被截断并偏离中心。
我主要在设置任意宽度、任意高度的 Storyboard 中工作。但是,如果我将设置更改为紧凑宽度、任意高度,我可以更改约束以更好地适应较小的设备,但在 5.5 英寸屏幕和较小设备之间工作仍然存在问题。
我想让我的 UITableView 一直延伸到每个设备的边缘,我想让单元格内部的视图保持居中,并在每个设备上保持它的相对大小。有没有人对我如何做到这一点有任何建议?
如果你想让你的表格视图 "fill" 整个屏幕(与设备无关),你唯一要做的就是将它的 4 个边缘(顶部、左侧、底部、右侧)固定到它的superview(在你的例子中是 viewcontrollers 视图),常量为 0。 您没有指定特定的宽度(如您的情况下的 600)或高度。
祝你好运:)