3

我目前正在为 iOS 制作应用程序,并且我有一个关于制作 UIViews 的快速问题。在设计 UIView 的过程中,我想知道是否一切都应该基于包含我的视图的矩形的边界。

例如,我目前正在做的那个被设​​计成一个只占据屏幕上部 25% 的页眉。尽管有这个意图,我是否仍然应该设计代码,以便如果视图占据整个屏幕,它仍然可以工作?

为了提供一个场景,假设我需要画一条线。我应该只画 20 个像素,还是应该总是画矩形宽度的 30%。

我理解可重用性的概念,但如果我只是为了这个特定目的设计这个视图,让它在本质上有点僵化是否可以接受?

4

1 回答 1

3

为改变和可重用性而设计始终是一个好的实践。但是,正如您也意识到的那样,它引入的开销有时会超过灵活设计的好处。

我会说,如果视图仅用于具有特定大小的特定目的,那么硬编码某些值是可以的。为 UI 组件创建固定大小的图像是相当普遍的,就像在代码中使用固定大小的值一样。尽管如此,对所有硬编码值使用常量并在代码的集中位置收集所有这些值是一种很好的做法,例如:

static const CGFloat centerLineWidth = 20.0;

这样,如果需要更改某些内容,您可以相对轻松地重新配置您的视图。

最后,如果视图可能使用不同尺寸的可能性很小,您应该选择灵活的设计。您也可以混合使用这些概念,例如创建一个在设计时考虑到灵活宽度但其高度应该是固定值的视图。

于 2012-11-22T09:38:39.137 回答