【问题标题】:How to align Right-Justify UILabel?如何对齐右对齐 UILabel?
【发布时间】:2018-03-09 19:56:21
【问题描述】:

备注:

实施:

myLabel.textAlignment = .right

能解决我的问题吗,这不是我想要的。



我想要实现的是让标签的对齐方式右对齐

为了更清楚:

这就是left 对齐的样子:

这就是justify 对齐的样子:

如果您没有看到两个屏幕截图之间的任何差异,您可以通过标签的右(尾随)约束来识别它,您会注意到在第二个屏幕截图中标签的整个宽度已被填充文本。

如第二张截图所示,让标签对齐会默认Left-Justify,即最后一行对齐是left

我怎样才能让标签向右对齐?换句话说,我希望文本就像第二个屏幕截图一样,只是我希望最后一条短线向右移动。

如果您想知道这样做的目的是什么,它适用于 从右到左 语言。

【问题讨论】:

标签: ios swift alignment uilabel


【解决方案1】:

ENUM 没有可用于right justified

你必须从NSTextAlignmentLeft,NSTextAlignmentRight,NSTextAlignmentCenter,NSTextAlignmentJustified,NSTextAlignmentNatural中选择。

您已经添加了 xcode 的界面生成器的屏幕截图!一旦在模拟器或设备中检查它。

如果您想在标签的左侧或右侧留出空间并带有对齐的文本,那么您可以使用edge insets

例如Left padding in label

【讨论】:

    【解决方案2】:

    感谢@user6788419 提及appropriate answer

    为了实现它,您应该使用NSMutableParagraphStyle

    一个可以改变子属性值的对象 段落样式属性。

    它使您能够同时使用alignmentbaseWritingDirection,从而获得所需的输出:

    import UIKit
    
    class ViewController: UIViewController {
        @IBOutlet weak var lblDescription: UILabel!
    
        override func viewDidLoad() {
            super.viewDidLoad()
    
            let text: NSMutableAttributedString = NSMutableAttributedString(string: "In vertebrates, it is composed of blood cells suspended in blood plasma. Plasma, which constitutes 55% of blood fluid, is mostly water (92% by volume), and contains dissipated proteins...")
    
            let paragraphStyle = NSMutableParagraphStyle()
            paragraphStyle.alignment = .justified
            paragraphStyle.baseWritingDirection = .rightToLeft
            paragraphStyle.lineBreakMode = .byWordWrapping
    
            text.addAttribute(NSAttributedString.Key.paragraphStyle, value: paragraphStyle, range: NSMakeRange(0, text.length))
    
            lblDescription.attributedText = text
        }
    }
    

    输出将是:

    【讨论】:

      猜你喜欢
      • 2013-07-02
      • 1970-01-01
      • 2011-10-13
      • 1970-01-01
      • 2012-06-29
      • 1970-01-01
      • 1970-01-01
      • 2016-05-06
      • 1970-01-01
      相关资源
      最近更新 更多