1

我对iOS 开发人员如何以编程方式使两个 UIView 之间的边缘/边界/边界看起来更好很感兴趣。当我将视图放到故事板上时,它们之间产生的联系非常清晰。例如,考虑下面的屏幕截图:

我的应用

灰色标题和下面的渐变之间的线非常清晰,我正在想办法让两个视图之间的过渡更容易让人眼前一亮。我花了很多工作和实验在左侧面板周围添加圆角阴影,但按钮仍然不能完美融合。

这是iOS6应用商店的截图。我在两个视图之间的边界应用附加效果的地方添加了红点:

应用商店

  • 细节按钮周围的边界有某种内部阴影
  • 顶部和底部面板之间的水平线似乎有某种阴影效果
  • 屏幕截图周围有一个非常细的边框/阴影

    如何以编程方式实现这种外观和感觉?我尝试使用 CALayer 的 shadowPaths 和边框属性,但工作量很大,必须非常迭代地完成。是否有一些开源 UIView 子类查看它的超级视图并决定在自身周围应用哪些效果以更自然地与超级视图融合?

这是另一个示例:iPad 版 Adob​​e Ideas。我真的很喜欢他们的按钮和面板周围有微妙的边框,这使得过渡在带有视网膜显示屏的 iPad 上看起来非常好。

在此处输入图像描述

4

2 回答 2

0

我找到了一种让图像更自然融合的方法——在视图周围分配一个半透明的边框。为了融入白色背景,在下面的颜色中添加更多的白色,为了融入深色,添加更少的白色。结果是 1 像素宽的半透明边框使两种强烈对比的颜色之间的边界不那么强烈。

这种方法的优点是您不再使用特定的颜色边框进行编码。边框的透明度将视图的边框像素转换为较浅/较深的颜色阴影。

#import <QuartzCore/QuartzCore.h>

view.layer.borderColor =[UIColor colorWithWhite:0.7 alpha:0.7].CGColor;
view.layer.borderWidth = 1;
于 2013-04-14T14:11:44.650 回答
0

所有这些技能都被称为 Quartz 2D,Apple 有免费的在线手册。视图和动画是您想要阅读的另外 2 个。我有,预计至少有 6 小时的阅读时间。之后你不会花时间在教程上,节省时间。

于 2013-04-09T21:53:03.043 回答