首页 > 解决方案 > 更改文本中单个字符的颜色

问题描述

是否可以将文本的特定字符更改为与其他字符不同的颜色?我希望前 2 个字符“12”不同。

VStack(alignment: .leading, spacing: 0) {
                        HStack {
                            Text("12Text")
                             .foregroundColor(Color("Orange"))
                             .bold()
                                .font(.system(size: 17.5))
                                .padding(.top)
                             Spacer()

更新:

VStack(alignment: .leading, spacing: 0) {
                HStack(spacing: 0) {
                            Text("12")
                             .foregroundColor(Color("Orange"))
                             .bold()
                                .font(.system(size: 17.5))
                                .padding(.top)
                            
                            HStack(spacing: 0) {
                            Text("Text")
                                .foregroundColor(Color("White"))
                                .padding(.top)
                                Spacer()
                            }

标签: swiftswiftuiwidget

解决方案


您可以使用+运算符 onText将它们连接在一起。我对每个 应用不同的颜色Text,将它们连接起来,然后应用其他修饰符。

VStack(alignment: .leading, spacing: 0) {
    HStack {
        (
            Text("12")
                .foregroundColor(.orange) +
            
            Text("Text")
                .foregroundColor(.red)
        )
        .bold()
        .font(.system(size: 17.5))
        .padding(.top)
        
        Spacer()
    }
}

结果:

结果


推荐阅读