【问题标题】:Centralise the title of UIButton as show in the Image Below Swift集中 UIButton 的标题,如 Swift 下的图像所示
【发布时间】:2015-08-13 03:02:37
【问题描述】:

我想显示这样的按钮标题

但即使在标题集中后,我的输出也是这样

frmbtn 是按钮的出口,我为此使用的代码是

 frmbtn.setTitle("From Station\nSTN\nSTATION NAME", forState: UIControlState.Normal)

    frmbtn.titleLabel!.numberOfLines = 3
    frmbtn.contentHorizontalAlignment = UIControlContentHorizontalAlignment.Center

我们可以在按钮标题中放置不同的文字大小吗?

【问题讨论】:

  • 检查更新的答案

标签: ios swift uibutton text-alignment


【解决方案1】:

你也可以像这样简单地给空间:

 frmbtn.setTitle("From Station\n     STN\nSTATION NAME", forState: UIControlState.Normal) \\give here space after \n and see the result

    frmbtn.titleLabel!.numberOfLines = 3
    frmbtn.contentHorizontalAlignment = UIControlContentHorizontalAlignment.Center

【讨论】:

    【解决方案2】:

    要在 UIButton 上设置多行标题,check this forum 帖子描述了更改按钮标签。

    myButton.titleLabel.textAlignment = UITextAlignmentCenter;
    myButton.titleLabel.lineBreakMode = UILineBreakModeCharacterWrap;
    [myButton setTitle:@"From Station STN station name" forState:UIControlStateNormal];
    

    【讨论】:

      【解决方案3】:

      这里是你想要的完整。

      import UIKit
      
      class ViewController: UIViewController {
      
          @IBOutlet var button: UIButton!
      
          override func viewDidLoad() {
              super.viewDidLoad()
      
              var str : NSMutableAttributedString = NSMutableAttributedString(string: "From station\nSTN\nStation Name")
              str.addAttribute(NSFontAttributeName, value: UIFont.systemFontOfSize(20), range: NSRange(location: 13,length: 3))
              button.setAttributedTitle(str, forState: UIControlState.Normal)
              button.titleLabel!.lineBreakMode = .ByWordWrapping
              button.titleLabel?.textAlignment = .Center
              button.titleLabel?.adjustsFontSizeToFitWidth = true
      
          }
      }
      

      【讨论】:

      • 太棒了..!我认为这是不可能的直到现在..!!根据需要工作...! Ek Dum Jhakas...!!
      【解决方案4】:

      您必须在titleLabel 本身上设置文本对齐方式。您还可以更改字体大小作为font 属性的一部分。

          scanButton.titleLabel!.numberOfLines = 3
          scanButton.titleLabel!.textAlignment = NSTextAlignment.Center;
          scanButton.titleLabel!.font = UIFont.systemFontOfSize(40);
      

      【讨论】:

        猜你喜欢
        • 2012-09-28
        • 1970-01-01
        • 2011-05-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-25
        • 1970-01-01
        • 2015-06-28
        相关资源
        最近更新 更多