Search code examples
iosswiftuiactionsheet

How to change Action Sheet Default action color only?


I have an Action Sheet with one Default action and one Cancel action. How can I change just Default action text color?

var refreshAlert = UIAlertController(title: "", message: "Are you sure you want to clear the entire message history? \n This cannot be undone.", preferredStyle: UIAlertControllerStyle.ActionSheet)

refreshAlert.addAction(UIAlertAction(title: "Clear message history", style: .Default, handler: { (action: UIAlertAction!) in
    print("Handle Ok logic here")
    // how to change this text color to red?
}))

refreshAlert.addAction(UIAlertAction(title: "Cancel", style: .Cancel, handler: { (action: UIAlertAction!) in
    print("Handle Cancel Logic here")
}))

Solution

  • You cannot. Instead Change your method like below: Apple has provided red color for Destructive buttons.

    refreshAlert.addAction(UIAlertAction(title: "Clear message history", style: .Destructive, handler: { (action: UIAlertAction!) in
        print("Voila !! button color is changed")
    }))