Tôi đã tạo một lớp tùy chỉnh MyButton mở rộng từ UIButton. Sau đó thêm vào bên trong Identity Inspector:

Sau đó, thay đổi loại nút thành Tùy chỉnh :

Sau đó, bạn có thể đặt các thuộc tính như textColorvà UIFontcho của bạn UIButtoncho các trạng thái khác nhau:

Sau đó, tôi cũng đã tạo hai phương thức bên trong MyButtonlớp mà tôi phải gọi bên trong mã của mình khi tôi muốn UIButtonhiển thị như được tô sáng:
- (void)changeColorAsUnselection{
[self setTitleColor:[UIColor colorFromHexString:acColorGreyDark]
forState:UIControlStateNormal &
UIControlStateSelected &
UIControlStateHighlighted];
}
- (void)changeColorAsSelection{
[self setTitleColor:[UIColor colorFromHexString:acColorYellow]
forState:UIControlStateNormal &
UIControlStateHighlighted &
UIControlStateSelected];
}
Bạn phải đặt mức titleColorbình thường, tô sáng và chọn UIControlStatevì có thể có nhiều trạng thái tại một thời điểm theo tài liệu của UIControlState. Nếu bạn không tạo các phương thức này, thì UIButtonsẽ hiển thị lựa chọn hoặc tô sáng nhưng chúng sẽ không ở trong UIColorthiết lập của bạn bên trong UIInterface Buildervì chúng chỉ có sẵn để hiển thị ngắn một lựa chọn, không phải để hiển thị lựa chọn.