You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SwiftUI布局优化:实现指定元素水平居中与文本对齐需求

解决方案

你可以通过调整HStack的对齐方式,同时保留VStack的左对齐设置来实现需求:

struct ContentView: View {
    var body: some View {
        HStack(alignment: .center) {
            Image(systemName: "speedometer")
            VStack(alignment: .leading, spacing: 6) {
                Text("Hello")
                ProgressView(value: 50, total: 100)
                    .progressViewStyle(.linear)
            }
            Text("75")
                .font(.title)
            Image(systemName: "chevron.forward")
        }
        .padding()
    }
}

修改说明:

  • 将HStack的alignment从.lastTextBaseline改为.center,让速度表图标、ProgressView、“75”文本、Chevron图标在垂直方向上居中对齐。
  • 保留VStack的.leading对齐,确保“Hello”文本始终在ProgressView的上方左对齐。
  • 给“75”添加.font(.title)是为了匹配期望效果中的视觉层级,可根据需求调整。

内容的提问来源于stack exchange,提问作者travis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 20:13:00