包含日文字符时缺少 TextField 字体样式

Posted

技术标签:

【中文标题】包含日文字符时缺少 TextField 字体样式【英文标题】:TextField font style missing when it holding Japanese character 【发布时间】:2019-11-24 12:06:16 【问题描述】:

将字符串传递给视图

// Case 1: English alphabet is no problem
test(deck: "ABCDE")

// Case 2: Font style is missing
test(deck: "アイウエオ")

// Case 3: Font style is missing
test(deck: "ABCアイウエオDE")

结果:case1

结果:case2

结果:case3

目标视图:将字符串值存储在文本字段中

struct test: View 
    @State var deck : String = ""

    var body: some View 
        VStack 
            
            TextField("deck name", text: $deck)
                .font(.largeTitle)
                .foregroundColor(Color.black)
                .multilineTextAlignment(.center)
                .lineLimit(1)
        

        
    

如您所见,当文本字段包含日文字符时,字体样式无法正常工作。

非常感谢!

【问题讨论】:

【参考方案1】:

最新版本的 xCode 和 ios 存在错误。该问题仅在使用TextField 时出现。如果你使用普通的Text 就可以了。

如果我找到解决此问题的方法,我会通知您。在此之前您不能将TextField 与这组字符一起使用。

【讨论】:

以上是关于包含日文字符时缺少 TextField 字体样式的主要内容,如果未能解决你的问题,请参考以下文章

android 开发 默认字体太粗 怎么设置细体

日文系统下ultraedit安装后,菜单显示乱码问题。

获取支持的字体字符 - 在 C# 中

6.在设置CSS样式时,若所需字体在当前列表中没有,怎么办?

Qt同时使用多个字体

为啥只有拉丁字符的 Java 字体声称支持亚洲字符,即使它不支持?