如何将警报视图框的颜色从蓝色更改为黑色?
任何人请帮助!!
答案 0 :(得分:7)
猜猜你想要这样的事情:
Black Alert View http://img.skitch.com/20100405-n2ka11en1u63kcpfu6x7et29mc.jpg
为了达到这个目的,我只是将警报视图子类化,以便我可以添加一些自己的代码。
我创建了一个背景图片视图,我在其中添加了黑色版本的警告框。
当调用drawRect时,我将背景图像视图的大小调整为正确的高度和宽度。
它有点像黑客,但它并没有违反苹果公司制定的任何指导原则(我现在在商店里有一个应用程序)。
为了获得良好的背景图像,我只是从UI工具包中提取图像(谷歌那你会发现如何),只是制作了黑色版本而不是蓝色版本。
这些按钮实际上是透明的,可以拾取它们下面的颜色。所以不需要改变它们。
希望有所帮助。
确实有可能。而且也很容易。总而言之,大约有5行代码; - )
编辑:问问,我们会收到
@implementation BlackAlertView
- (void) drawRect:(CGRect) rect
{
//Force our background image to be the right size.
_backgroundImageView.frame = rect;
}
- (void) dealloc
{
ReleaseAndNull(_backgroundImageView);
[super dealloc];
}
- (void)show
{
UIImage *alertBoxImage = [[UIImage imageNamed:@"UIPopupAlertSheetBackground_black.png"] stretchableImageWithLeftCapWidth:0 topCapHeight:40];
_backgroundImageView = [[UIImageView alloc] initWithImage:alertBoxImage];
[self addSubview:_backgroundImageView];
[self sendSubviewToBack:_backgroundImageView];
[super show];
}
@end
就像我说它不是purdy,实际上它是5行以上。但它完成了工作。
克里斯。
答案 1 :(得分:0)
不,你不能。您必须创建自定义视图并使用 presentModalViewController
显示它