It is possible. Here is a brief implementation for iOS7:
@interface LNActionSheet : UIActionSheet { NSString* _destructiveButtonTitle; UIColor* _customtintColor; } @end @implementation LNActionSheet - (id)initWithTitle:(NSString *)title delegate:(id<UIActionSheetDelegate>)delegate cancelButtonTitle:(NSString *)cancelButtonTitle destructiveButtonTitle:(NSString *)destructiveButtonTitle otherButtonTitles:(NSString *)otherButtonTitles, ... { self = [super initWithTitle:title delegate:delegate cancelButtonTitle:cancelButtonTitle destructiveButtonTitle:destructiveButtonTitle otherButtonTitles:nil]; if(self) { va_list list; va_start(list, otherButtonTitles); for(NSString* title = otherButtonTitles; title != nil; title = va_arg(list, NSString*)) { [self addButtonWithTitle:title]; } va_end(list); _destructiveButtonTitle = destructiveButtonTitle; } return self; } - (void)setTintColor:(UIColor *)tintColor { _customtintColor = tintColor; } -(void)tintColorDidChange { [super tintColorDidChange]; for(id subview in self.subviews) { if([subview isKindOfClass:[UIButton class]]) { UIButton* button = subview; if(![button.titleLabel.text isEqualToString:_destructiveButtonTitle]) { [button setTitleColor:_customtintColor forState:UIControlStateNormal]; } } } } @end
Before displaying, set the hue color of the action sheet to your liking.
In this implementation, I decided to keep the name of the destructive button red, but this can be changed.
source share