制作具有不同颜色的UIAlertView的最简单方法是什么?

时间:2009-12-08 21:23:59

标签: iphone objective-c uialertview

我的应用程序使用黑色导航栏和其他自定义颜色用于各种UI组件,深蓝色的警报视图看起来非常不合适。

我想让警报视图半透明,而不必使用图像文件。

我不反对生成UIImage,因为我知道改变背景的唯一方法是使用UIImage,但我的所有尝试(基于下面的问题1)只是在后面做了一个坚实的黑色矩形警示视图(角不圆。)

相关但不重复:

  1. how to change background color of UIAlertView ?
  2. how can I change the color of UIAlartView ?
  3. 第一个使用图像“Background.png”以将其设置为背景。第二个问题与第一个问题相关,并声称OP不应该这样做。

2 个答案:

答案 0 :(得分:6)

没有API钩子这样做的事实应该是一个红旗 - 你不应该这样做。它没有使用私有API(这会让你拒绝),但它正在利用未记录的行为,Apple建议不要这样做。事实上,上周在iPhone技术讲座中,我特意警告Apple Dev Evangelist不要做这样的事情,因为它将来会破裂。

如果你真的想在UIAlertViews上做自己的事情,你应该创建自己的视图并通过模态视图控制器呈现它。

答案 1 :(得分:0)

由于UIAlertView不允许通过任何公共API更改背景颜色,因此自定义其背景颜色的唯一方法是将UIAlertView子类化。