source

UIButton 제목 텍스트 색상

manycodes 2023. 5. 1. 21:34
반응형

UIButton 제목 텍스트 색상

다음에 대한 텍스트 색상을 설정하는 중UIButton

headingButton.titleLabel.textColor = [UIColor colorWithRed:36/255.0 
                                                     green:71/255.0 
                                                      blue:113/255.0 
                                                     alpha:1.0];

다른 코드에서 사용하고 있는 것과 동일한 코드로 색상이 변경되지 않습니다.

사용하다

목표-C

[headingButton setTitleColor:[UIColor colorWithRed:36/255.0 green:71/255.0 blue:113/255.0 alpha:1.0] forState:UIControlStateNormal];

스위프트

headingButton.setTitleColor(.black, for: .normal)

사용자 정의 클래스를 만들었습니다. MyButton 확장자UIButton그리고 나서 이것을 내부에 추가했습니다.Identity Inspector:

여기에 이미지 설명 입력

그런 다음 단추 유형을 사용자 정의:

여기에 이미지 설명 입력

그런 다음 다음과 같은 속성을 설정할 수 있습니다.textColor그리고.UIFont당신을 위하여UIButton다양한 상태:

여기에 이미지 설명 입력

그리고 안에 두 가지 방법을 만들었습니다.MyButton내가 원할 때 내 코드 안에서 호출해야 하는 클래스.UIButton강조 표시된 대로 표시:

- (void)changeColorAsUnselection{
    [self setTitleColor:[UIColor colorFromHexString:acColorGreyDark] 
               forState:UIControlStateNormal & 
                        UIControlStateSelected & 
                        UIControlStateHighlighted];
}

- (void)changeColorAsSelection{
    [self setTitleColor:[UIColor colorFromHexString:acColorYellow] 
               forState:UIControlStateNormal & 
                        UIControlStateHighlighted & 
                        UIControlStateSelected];
}

설정해야 합니다.titleColor정상, 강조 표시 및 선택된 경우UIControlState의 문서화에 따라 한 번에 둘 이상의 상태가 있을 수 있기 때문입니다.UIControlState이러한 메소드를 만들지 않으면UIButton선택 항목 또는 강조 표시를 표시하지만 해당 항목이 계속 표시되지는 않습니다.UIColor내부에서 설정한UIInterface Builder선택 항목 자체를 표시하는 것이 아니라 선택 항목을 짧게 표시하는 데만 사용할 수 있기 때문입니다.

Swift에서:

레이블 텍스트 색상을 변경하는 것은 당분간 변경하는 것과 상당히 다릅니다.UIButton의 텍스트 색상을 변경하려면UIButton다음 방법을 사용합니다.

self.headingButton.setTitleColor(UIColor(red: 107.0/255.0, green: 199.0/255.0, blue: 217.0/255.0), forState: UIControlState.Normal)

swift 5 버전:

기본 내장 색상 사용:

  1. button.setTitleColor(UIColor.green, for: .normal)

OR

RGB 방법을 사용하여 사용자 정의 색상을 사용할 수 있습니다.

  1. button.setTitleColor(UIColor(displayP3Red: 0.0/255.0, green: 180.0/255.0, blue: 2.0/255.0, alpha: 1.0), for: .normal)

색상 외에도 텍스트 레이블을 사용하여 텍스트를 설정하는 것이 문제였습니다.

bt.titleLabel?.text = title

다음으로 변경하는 것을 해결했습니다.

bt.setTitle(title, for: .normal)

언급URL : https://stackoverflow.com/questions/6703699/uibutton-title-text-color

반응형