我目前正在为iOS制作应用程序,我有一个关于制作UIViews的快速问题。在设计UIView的过程中,我想知道是否所有内容都应该基于包含我视图的矩形的边界。
例如,我正在处理的那个被设计为仅占据屏幕上25%的标题。尽管有这个意图,我是否仍然应该设计代码,以便如果视图占据整个屏幕,它仍然可以工作?
要提供一个场景,我想说我需要绘制一条线。我应该只画20个像素,还是应该总是达到矩形宽度的30%。
我理解可重用性的概念,但如果我只是为了这个特定的目的而设计这个视图,那么它是否可以使它在性质上有点僵硬?
答案 0 :(得分:3)
设计变更和可重用性始终是一种很好的做法。但是,正如您已经意识到的那样,它引入的开销有时会超过灵活设计的好处。
我想说,如果视图仅用于特定大小的特定目的,则可以对某些值进行硬编码。为UI组件创建固定大小的图像是很常见的,就像在代码中使用固定大小的值一样。尽管如此,将常量用于所有硬编码值并在代码的集中位置收集所有这些值是一种很好的做法,例如:
static const CGFloat centerLineWidth = 20.0;
这样,如果需要更改某些内容,您可以相对轻松地重新配置视图。
最后,如果视图可能会以不同的尺寸使用,您应该采用灵活的设计。您还可以混合使用这些概念,例如:创建一个设计灵活宽度的视图,但其高度应该是固定值。