Hoe kan ik de titelkleur van de UIButton wijzigen?

Ik maak programmatisch een knop……….

button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
;
;
button.frame = CGRectMake(80.0, 210.0, 160.0, 40.0);
[view addSubview:button];

hoe kan ik de titelkleur wijzigen?


Antwoord 1, autoriteit 100%

U kunt hiervoor -[UIButton setTitleColor:forState:]gebruiken.

Voorbeeld:

Doelstelling-C

[buttonName setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];

Swift 2

buttonName.setTitleColor(UIColor.blackColor(), forState: .Normal)

Swift 3

buttonName.setTitleColor(UIColor.white, for: .normal)

Met dank aan richardchildan


Antwoord 2, autoriteit 4%

U hebt de UIbuttongemaakt, de ViewControlleris toegevoegd, de volgende instantiemethode om UIFont, tintColoren TextColorvan de UIbutton

Doelstelling-C

buttonName.titleLabel.font = [UIFont fontWithName:@"LuzSans-Book" size:15];
 buttonName.tintColor = [UIColor purpleColor];
 [buttonName setTitleColor:[UIColor purpleColor] forState:UIControlStateNormal];

Snel

buttonName.titleLabel.font = UIFont(name: "LuzSans-Book", size: 15)
buttonName.tintColor = UIColor.purpleColor()
buttonName.setTitleColor(UIColor.purpleColor(), forState: .Normal)

Swift3

buttonName.titleLabel?.font = UIFont(name: "LuzSans-Book", size: 15)
buttonName.tintColor = UIColor.purple
buttonName.setTitleColor(UIColor.purple, for: .normal)

Antwoord 3

Oplossingin Swift 3:

button.setTitleColor(UIColor.red, for: .normal)

Hiermee wordt de titelkleur van de knop ingesteld.


Antwoord 4

Met Swift 5 heeft UIbuttoneen setTitleColor(_:for:)methode. setTitleColor(_:for:)heeft de volgende verklaring:

Stelt de kleur van de titel in die moet worden gebruikt voor de opgegeven staat.

func setTitleColor(_ color: UIColor?, for state: UIControlState)

De volgende voorbeeldcode van Playground laat zien hoe u een UIbuttonin een UIViewControllermaakt en de titelkleur wijzigt met setTitleColor(_:for:):

import UIKit
import PlaygroundSupport
class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        view.backgroundColor = UIColor.white
        // Create button
        let button = UIButton(type: UIButton.ButtonType.system)
        // Set button's attributes
        button.setTitle("Print 0", for: UIControl.State.normal)
        button.setTitleColor(UIColor.orange, for: UIControl.State.normal)
        // Set button's frame
        button.frame.origin = CGPoint(x: 100, y: 100)
        button.sizeToFit()
        // Add action to button
        button.addTarget(self, action: #selector(printZero(_:)), for: UIControl.Event.touchUpInside)
        // Add button to subView
        view.addSubview(button)
    }
    @objc func printZero(_ sender: UIButton) {
        print("0")
    }
}
let controller = ViewController()
PlaygroundPage.current.liveView = controller

Antwoord 5

Als u Swift gebruikt, doet dit hetzelfde:

buttonName.setTitleColor(UIColor.blackColor(), forState: .Normal)

Hopelijk helpt dat!

Other episodes