uiactionsheet的背景颜色

时间:2010-08-06 17:38:00

标签: iphone objective-c

我尝试更改动作表的背景颜色,我只使用方法:

[actionSheet setBackgroundColor:[UIColor colorWithRed:30 green:30 blue:30 alpha:0.5]];

我将它放在willPresentActionSheet中。但背景颜色不变,为什么?

2 个答案:

答案 0 :(得分:12)

  • 添加QuartzCore.framework
  • 为您的操作表设置委托
  • 设置动作表的样式:UIActionSheetStyleBlackTranslucent
  • 覆盖方法willPresentActionSheet
#import "QuartzCore/QuartzCore.h"
...

yourActionSheet.delegate = self;
yourActionSheet.actionSheetStyle = UIActionSheetStyleBlackTranslucent;
...

- (void)willPresentActionSheet:(UIActionSheet *)actionSheet {
    [[actionSheet layer] setBackgroundColor:[UIColor redColor].CGColor];
}

答案 1 :(得分:1)

您可以参考现有的stackoverflow post谈论改变动作表着色的技巧。