0

我希望我的 UITextView 具有附加图片中的特殊阴影边框。

在此处输入图像描述

如何在不定位背景图像的情况下在 xcode 4.4 中实现它?

4

2 回答 2

0

我不确定这是否只能通过自定义绘图(即 Quartz/Core Graphics)。如果可能的话,我仍然会使用预渲染的图像。看看这篇文章

但这可能接近预期的效果:

    [yourTextView.layer setBackgroundColor: [[UIColor whiteColor] CGColor]];
    [yourTextView.layer setBorderColor: [[UIColor grayColor] CGColor]];
    [yourTextView.layer setBorderWidth: 1.0];
    [yourTextView.layer setCornerRadius: 8.0f];
    [yourTextView.layer setMasksToBounds: YES];

不要忘记导入:

#import <QuartzCore/QuartzCore.h>
于 2012-12-04T15:35:51.697 回答
0

这是我为实现外观所做的工作:

  • 创建一个容器视图,例如 m 宽乘 n 高。将其设置为剪辑子视图,并给它的 CALayer 一个角半径

  • 使用矩形视图创建文本框,设置角半径,并使其原点。y 是一个小数字 - 比如说 8。调整高度,使其偏移量为 2 倍

  • 创建一个使用 CAGradient 层的 UIView 子类,并让渐变使用从顶部开始的线性渐变,并随着 y 的增加而变浅。

  • 如上所述,创建另一个渐变视图,其中渐变从底部开始并向上移动(白色),或者只使用纯白色视图

  • 将第一个渐变视图添加到容器视图,然后是第二个,然后是文本框。

第二个渐变视图需要淡化为清晰的颜色,这样它就不会阻挡它下面的视图(您可以玩弄两个“效果”视图的顺序。

于 2012-12-04T15:47:41.820 回答