0

我正在制作UIViewController的子类,当用户按下按钮时,它将启动并添加来自另一个UIViewController子类的视图。

在添加的视图中,我有一个UIWebViewUIButton实例(用于关闭弹出窗口)。

由于它的目的是作为弹出窗口,我想为UIWebView添加边框和阴影,但由于它是 nib 启动的,我不知道如何修改绘图代码。

有什么帮助吗?:)

4

2 回答 2

1

看看使用视图的CALayer.

添加边框:

myView.layer.borderWidth = 1.f;
myView.layer.borderColor = [UIColor blackColor].CGColor;

添加阴影也有类似的方法:

myView.layer.shadowColor = [UIColor blackColor].CGColor;
myView.layer.shadowOffset = CGSizeMake(4.f, 4.f);
myView.layer.shadowRadius = 4.f;
myView.layer.shadowOpacity = 0.5f;
myView.layer.shouldRasterize = YES;

您需要将 Quartz 框架添加到您的目标中,并将标头导入控制器的 .m 文件中:

#import <QuartzCore/QuartzCore.h>
于 2013-07-19T13:21:43.150 回答
0

您可以通过这种方式将边框阴影添加到任何控件。
您还可以设置边框的宽度,也可以将其设为圆角

CALayer * l1 = [viewPopup layer];
[l1 setMasksToBounds:YES];
[l1 setCornerRadius:5.0];

// Add a border
[l1 setBorderWidth:5.0];
[l1 setBorderColor:[[UIColor darkGrayColor] CGColor]];

// Add a shadow
[l1 setShadowColor:[[UIColor darkGrayColor] CGColor]];
[l1 setShadowOpacity:5.0];
// You can more methods for shadow

只需viewPopup用您的控件替换即可。

注意:-不要忘记导入<QuartzCore/QuartzCore.h>

于 2013-07-19T13:30:35.243 回答