UIButton 제목 색상을 어떻게 변경합니까?


189

프로그래밍 방식으로 버튼을 만듭니다 ..........

button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button addTarget:self action:@selector(aMethod:)
forControlEvents:UIControlEventTouchDown];
[button setTitle:@"Show View" forState:UIControlStateNormal];
button.frame = CGRectMake(80.0, 210.0, 160.0, 40.0);
[view addSubview:button];

제목 색상은 어떻게 변경합니까?

답변:


522

이를 위해 사용할 수 있습니다 -[UIButton setTitleColor:forState:].

예:

목표 -C

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

스위프트 2

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

스위프트 3

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

richardchildan 에게 감사합니다


38
예를 들어 [buttonName setTitleColor : [UIColor blackColor] forState : UIControlStateNormal];
Robert Childan

3
[UIButton setTitleColor : forState :]는 작동하지만 btn.titleColor = [UIColor x]는 작동하지 않습니다.
Legnus

난 당신이 액세스 할 수있는 방법을 볼 수 없습니다 @Lengus btn.titleColor, 바로이 btn setTitleColor가능합니다
알렉스 C10의

1
훌륭한 답변. 그냥 색상을 변경하기 위해 상태를 설정하는 방법은 어리석은
Supertecnoboff

RGB는 어떻습니까?
Umit Kaya

23

당신은 생성 UIButton을 추가 ViewController, 변경하려면 다음 인스턴스 방법을 UIFont, tintColor그리고 TextColorUIButton

목표 -C

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

빠른

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

스위프트 3

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

3
단순히 코드를 게시하지 마십시오. 코드에 대한 설명이나 정보 또는 사용법을 제공하십시오. 예를 들어이 답변을 참조하십시오 .
Azik Abdullah

3

솔루션 에서 스위프트 3 :

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

버튼의 제목 색상이 설정됩니다.


1

Swift 5 UIButton에는 setTitleColor(_:for:)방법이 있습니다. setTitleColor(_:for:)다음과 같은 선언이 있습니다.

지정된 상태에 사용할 제목의 색상을 설정합니다.

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

다음 놀이터 샘플 코드는 UIbutton에서 를 만들고 UIViewController제목 색상을 변경 하는 방법을 보여줍니다 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

0

Swift를 사용하는 경우 동일한 작업을 수행합니다.

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

희망이 도움이됩니다!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.