如何从底部对齐 UILabel 文本?

2023-12-28

How the UILabel可以从底部对齐。假设我的标签可以容纳三行文本。如果输入文本是单行,那么这一行应该位于标签的底部。请参考下图以更好地理解。橙色区域是标签的全框,目前只有一行,居中对齐。所以我想要的是,无论有多少行,它都应该始终对齐底部。

请提出您的想法。

谢谢。


Swift 4.2 版本使用contentMode设置顶部和底部的属性:

class VerticalAlignedLabel: UILabel {
    
    override func drawText(in rect: CGRect) {
        var newRect = rect
        switch contentMode {
        case .top:
            newRect.size.height = sizeThatFits(rect.size).height
        case .bottom:
            let height = sizeThatFits(rect.size).height
            newRect.origin.y += rect.size.height - height
            newRect.size.height = height
        default:
            ()
        }
        
        super.drawText(in: newRect)
    }
}

然后像这样设置你的标签:

let label = VerticalAlignedLabel()
label.contentMode = .bottom
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从底部对齐 UILabel 文本? 的相关文章

随机推荐

  • 绑定到 Cloud Foundry 后如何访问 MongoDB 值/数据?

    我正在使用 Spring Boot 并使用 mongodb 数据库创建了一个 Web 应用程序 在本地 我使用命令提示符 mongod 和 mongo 我可以在其中查询在 UI 中输入的数据 我当前的应用程序使用在本地主机上运行的 Mong
  • Android 应用程序如何延迟手机启动时的服务启动

    你好 当我的应用程序收到 ACTION BOOT COMPLETED 时 它会启动一项服务 我想延迟 60 秒 我可以在以下位置这样做吗 public class StartAtBootServiceReceiver extends Bro
  • 克隆特定分支

    我是 git 版本控制的新手 我不知道如何克隆 拉取存储库的特定分支 尝试获取分支master项目的 但默认为分支test 1 我尝试过使用命令git clone但它抓住了默认test 1 我也尝试过阅读其他问题 但这些命令让我感到困惑 我
  • addGlobalMonitorForEventsMatchingMask 在某些计算机上不起作用

    我正在使用此代码在我的应用程序中捕获全局键盘快捷键 这在我运行它的几乎每台计算机上都非常有效 本周我在全新的 Retina Macbook Pro 上尝试了它 addGlobalMonitorForEventsMatchingMask根本不
  • 在 Woocommerce 结帐中设置 billing_address_2 标签

    我正在尝试在 Woocommerce 结帐页面上设置 显示 billing address 2 字段的标签 但找不到执行此操作的方法 有谁知道解决方案吗 下面的代码 在其他领域工作正常 不能完成这项工作 add filter woocomm
  • 数字输入 - 始终显示旋转按钮

    在谷歌浏览器中 input type number 旋转按钮仅在悬停时显示 这是我使用的代码
  • Azure 模拟器/IIS Express 和 SSL 客户端证书身份验证出现 web.config 错误

    在任何人感到困惑之前 这是为了IIS 快递 不是 IIS 我们有一个需要 SSL 客户端证书身份验证的 MVC5 应用程序 在开发过程中 它在 VS2013 中的 Azure 模拟器中运行 该模拟器在管理员权限下运行 针对端口 80 443
  • 是否有一个 JavaScript 库可以用来过滤 XSS 攻击的字符串?

    是否有类似 HTMLPurifier 等库的 Javascript 等效项 可以从字符串中删除 XSS 代码 一般来说 当 Javascript 代码运行时 要保护自己免受 XSS 攻击就为时已晚了 您需要在服务器而不是客户端防范它
  • “stoi”未在此范围内声明[重复]

    这个问题在这里已经有答案了 所以这个错误已经被解决了好几次 但没有答案对我有帮助 我在 Windows 10 上使用 Notepad 和 Cygwin 我的代码如下 来自Derek Banas 的 1 小时 C 教程 https www y
  • 如何以右对齐方式打印数字? [复制]

    这个问题在这里已经有答案了 所以我正在尝试一次代码评估的简单问题乘法表 https www codeeval com open challenges 23 其中一项要求是 数字右对齐并去掉前导 尾随空格 每行 我不确定如何做到这一点 我当前
  • 运行schedule时获取laravel环境

    我在 Laravel 5 时间表中设置了一些命令 输出存储在文件中并通过电子邮件发送给我 由于该项目有多个 副本 我想使用环境名称来区分电子邮件来自哪个副本 我尝试使用app gt environment 在时间表描述中 它抛出一个错误 F
  • ASP.NET MVC:视图引擎无法找到使用 MEF 加载的模型类型的视图

    我正在尝试创建一个框架 允许将控制器和视图动态导入到 MVC 应用程序中 到目前为止它的工作原理如下 我正在使用 NET 4 ASP NET MVC 3 RC 和 Razor ViewEngine 每个项目使用 MEF 导出和导入控制器 我
  • *最快*目录列表

    我有大量目录 我想尽快读取所有文件 我的意思是 不是 DirectoryInfo GetFiles 快 而是 从磁盘低级获取集群 快 当然 NET 2 0 c 类似的问题在这里 但这种方法没有任何好处 C 目录列出海量目录 https st
  • jQuery - 触发后面元素的点击事件

    我的问题是我有这个盒子又名容器 该容器内有用户可以单击的框 为了在视觉上帮助用户 我制作了带有灰色淡出颜色的覆盖框 这告诉他们可以使用这里的盒子 但我的问题是点击事件位于覆盖框后面的框上 那么有没有办法忽略一个元素的 click 并使用下一
  • Symfony2 中的 Doctrine2:如何查看哪个对象调用导致查询?

    我正在使用 Symfony2 和 Doctrine2 对于我的项目 我制作了具有不同关联映射的实体 首先 我确实看到了大约 7 个请求一个对象的查询 所以我决定进行 热切加载 并将其减少到三个查询 但其中两个在symfony工具栏 Prof
  • 通过 Node.js 使用 HTML 5 进行视频流传输

    我正在尝试设置一个 Web 服务器 该服务器支持使用 node js 将视频流式传输到 HTML5 视频标记 到目前为止 这是我的代码 var range request headers range var total file lengt
  • 如何仅针对特定规则抑制代码块内的检查样式检查? [复制]

    这个问题在这里已经有答案了 可能的重复 如何禁用特定代码行的特定检查样式规则 http stackoverflow com questions 4023185 how to disable a particular checkstyle r
  • 如何通过 XML 中的 id 删除节点元素?

    Using javax xml and org w3c public void removeNodeFromXML File xmlfile String uuid DocumentBuilderFactory factory Docume
  • Xamarin.iOS 在 Visual Studio 2019、2022 中找不到配置文件

    Visual Studio 2019 或 2022 无法识别 Xamarin iOS 的活动预配配置文件 我解决该问题的活动 删除了 Visual Studio 项目中的 bin 和 obj 文件夹 从此处删除了 Windows 上的旧配置
  • 如何从底部对齐 UILabel 文本?

    How the UILabel可以从底部对齐 假设我的标签可以容纳三行文本 如果输入文本是单行 那么这一行应该位于标签的底部 请参考下图以更好地理解 橙色区域是标签的全框 目前只有一行 居中对齐 所以我想要的是 无论有多少行 它都应该始终对