UIButton의 텍스트 정렬 센터를 만드는 방법은 무엇입니까?IB 사용
IB를 중심으로 UIButton의 제목을 설정할 수 없습니다.제 제목은 멀티라인입니다.
이렇게 주는 거예요.
하지만 나는 이것처럼 원합니다.
나는 이것에 공간을 주었지만 나는 그것을 하고 싶지 않습니다.경우에 따라 정확하게 정렬되지 않고 정렬을 설정하는 UILabel 속성이 있는 것으로 알고 있지만 코드를 작성하고 싶지 않습니다.IB의 모든 것을 설정하고 싶을 뿐입니다.
감사해요.
이것은 당신이 기대했던 것과 정확히 일치할 것입니다.
목표-C:
[myButton.titleLabel setTextAlignment:UITextAlignmentCenter];
iOS 6 이상의 경우 다음과 같습니다.
[myButton.titleLabel setTextAlignment: NSTextAlignmentCenter];
스위프트:
myButton.titleLabel?.textAlignment = NSTextAlignment.Center
Swift 4.x 이상
myButton.titleLabel?.textAlignment = .center
선을 사용합니다.
myButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;
이렇게 하면 콘텐츠가 수평으로 중앙에 배치됩니다.
레이블 내부의 텍스트도 가운데로 설정하려면 다음을 사용합니다.
[labelOne setTextAlignment:UITextAlignmentCenter];
IB를 사용하려면 XCode 4에 링크되어 있지만 충분한 세부 정보를 제공해야 하는 작은 예가 있습니다(또한 속성 화면 위에 속성 탭이 표시됩니다).XCode 3.x)에서 동일한 탭을 찾을 수 있습니다.
솔루션 1
스토리보드에서 키 경로를 설정할 수 있습니다.
텍스트를 여러 줄 제목으로 설정합니다. hello
⌥ + ↵ multiline
텍스트를 다음 줄로 이동하려면 +를 눌러야 합니다.
그런 다음 키 경로를 추가합니다.
titleLabel.textAlignment
~하듯이Number
및 가치1
,1
수단NSTextAlignmentCenter
titleLabel.numberOfLines
~하듯이Number
및 가치0
,0
임의의 수의 선을 의미합니다.
이는 IB/X 코드에는 반영되지 않지만 실행 시 중앙에 배치됩니다(장치/시뮬레이터).
Xcode의 변경 내용을 보려면 다음을 수행해야 합니다. (이러한 단계를 건너뛸 수 있습니다.)
UIButton을 하위 분류하여 버튼을 지정할 수 있도록 합니다.
import UIKit @IBDesignable class UIDesignableButton: UIButton {}
이 지정 가능한 하위 클래스를 수정할 단추에 할당합니다.
- 올바르게 수행된 경우, Designables 상태가 "최신"일 때(몇 초 정도 걸릴 수 있음) IB에서 시각적 업데이트를 볼 수 있습니다.
솔루션 2
코드를 작성하려면 긴 프로세스를 수행합니다.
1. 만들기IBOutlet
임시변통하여
2.viewDidLoad에 코드 쓰기
btn.titleLabel.textAlignment = .Center
btn.titleLabel.numberOfLines = 0
솔루션 3
xcode의 최신 버전(내 이름은 xcode 6.1)에서는 속성 속성 제목이 있습니다.
선택한다.Attributed
그런 다음 텍스트를 선택하고 아래 중앙 옵션을 누릅니다.
추신: 텍스트가 여러 줄로 오지 않아서 설정해야 합니다.
btn.titleLabel.numberOfLines = 0
UIButton의 경우 다음을 사용해야 합니다.
[btn setContentHorizontalAlignment:UIControlContentHorizontalAlignmentCenter];
ios 8 및 Swift의 경우
btn.titleLabel.textAlignment = NSTextAlignment.Center
또는
btn.titleLabel.textAlignment = .Center
현재 iOS 6 이상을 사용하는 사용자에게는 UITextAlignmentCenter가 더 이상 사용되지 않습니다.지금은 NSTextAlignmentCenter입니다.
예:mylabel.textAlignment = NSTextAlignmentCenter;
완벽하게 작동합니다.
swift 4, xcode 9의 경우
myButton.contentHorizontalAlignment = .center
btn이 UIButton을 가리킨다고 가정하면, 여러 줄의 캡션을 수평으로 중앙에 배치하도록 변경하려면 iOS 6 이상에서 다음 명령문을 사용할 수 있습니다.
self.btn.titleLabel.textAlignment = NSTextAlignmentCenter;
Swift 4의 경우:
@IBAction func myButton(sender: AnyObject) {
sender.titleLabel?.textAlignment = NSTextAlignment.center
sender.setTitle("Some centered String", for:UIControlState.normal)
}
UITextAlignmentCenter
iOS6에서는 더 이상 사용되지 않습니다.
대신 다음 코드를 사용할 수 있습니다.
btn.titleLabel.textAlignment=NSTextAlinmentCenter;
Swift 3.0용
btn.titleLabel?.textAlignment = .center
다음과 같이 시도:
yourButton.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
yourButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;
실제로 인터페이스 빌더에서 할 수 있습니다.
제목을 다음으로 설정해야 합니다."Attributed"
그런 다음 가운데 맞춤을 선택합니다.
스토리보드에서 이 작업을 수행할 수 있습니다.단추를 선택합니다.줄 바꿈 'Word Wrap'을 설정하고 제목 'Plain'을 'Attributed'로 설정합니다.'중앙 정렬'을 선택합니다.이 부분이 중요합니다 => 클릭...(추가) 버튼.그리고 줄 바꿈 모드를 선택하여 '문자 줄 바꿈'을 선택합니다.
UIButton은 setTextAlignment를 지원하지 않습니다.따라서 버튼 텍스트 정렬을 위해 setContentHorizontalAlignment를 사용해야 합니다.
참고로
[buttonName setContentHorizontalAlignment:UIControlContentHorizontalAlignmentCenter];
언급URL : https://stackoverflow.com/questions/5712937/how-to-make-uibuttons-text-alignment-center-using-ib
'source' 카테고리의 다른 글
Ruby/Rails: 날짜를 UNIX 타임스탬프로 변환 (0) | 2023.06.01 |
---|---|
장기간 실행되는 Linux 프로세스의 시작 시간을 얻는 방법은 무엇입니까? (0) | 2023.05.27 |
jQuery에서 여러 CSS 속성을 어떻게 정의합니까? (0) | 2023.05.27 |
시스템.Linq.Dynamic이 OrderByDescending("일부 열")을 지원하지 않습니까? (0) | 2023.05.27 |
Azure KeyVault에서 연결 문자열을 가져오는 방법은 무엇입니까? (0) | 2023.05.27 |