0

我有一个材料按钮。当我点击它时,按钮中的文本标签会缩小并保持较小,释放后永远不会恢复到原始大小。我使用的可可豆荚是 pod 'MaterialComponents/Buttons', '~> 92.4.0'

点击前

点击前

点击后

点击后

import UIKit
import MaterialComponents.MaterialButtons

class TestViewController: UIViewController {

private let testButton: MDCButton = {
    let button = MDCButton()
    button.translatesAutoresizingMaskIntoConstraints = false
    button.setTitle("Test", for: UIControl.State.normal)
    button.titleLabel?.font = UIFont(name: button.titleLabel!.font.fontName, size: 22)
    button.titleLabel?.adjustsFontSizeToFitWidth = true
    button.titleLabel?.numberOfLines = 1
    button.titleLabel?.minimumScaleFactor = 0.5
    button.titleLabel?.lineBreakMode = NSLineBreakMode.byClipping;
    button.setTitleColor(.white, for: .normal)
    button.backgroundColor = UIColor.blue
    button.layer.cornerRadius = 10
    button.layer.shadowColor = UIColor.gray.cgColor
    button.layer.shadowOffset = CGSize(width: 0.0, height: 3.0)
    button.layer.shadowOpacity = 0.3
    button.layer.shadowRadius = 1.0
    button.layer.masksToBounds = false
    return button
}()

override func viewDidLoad() {
    super.viewDidLoad()
    self.setNeedsStatusBarAppearanceUpdate()
    self.view.backgroundColor = UIColor.white
    self.navigationItem.title = "The Page"
    self.view.addSubview(testButton)
    var testConstraintsArray: [NSLayoutConstraint] = []
    testConstraintsArray.append(testButton.centerXAnchor.constraint(equalTo: 
    self.view.centerXAnchor))
    testConstraintsArray.append(testButton.centerYAnchor.constraint(equalTo: 
    self.view.centerYAnchor))
    NSLayoutConstraint.activate(testConstraintsArray)
}

override var preferredStatusBarStyle: UIStatusBarStyle {
    return .lightContent
}

}
4

1 回答 1

0

我们的一位开发人员找到了解决方案。非常简单的修复,但由于我们无法在任何我认为我会分享的地方找到答案。

button.titleLabel?.font =  UIFont(name: "Roboto-Medium", size: 20)

本来应该....

button.setTitleFont(UIFont(name: "Roboto-Medium", size: 20), for: .normal)
于 2020-06-11T22:05:07.030 回答