Unity的Text组件里面如何实现首行缩进

一般而言,MyText.text里面要输入首行空格,那是不可能的。
譬如输入如下的内容:

    第一段:如何在text里面输入空格
一般而言,MyText.text里面要输入首行空格,那是不可能的。

那用什么方法呢?当然是用【全角空格"\u3000"】。

#if UNITY_EDITOR
    [ContextMenu("加载文字")]
    void LoadContent()
    {
    
    
        this.GetComponent<Text>().text = "";
        string content = "";
        foreach(string str in paraContent)
        {
    
    
            //生成了一段又一段
            content += "\u3000" + "\u3000" + str + "\n";

        }

        this.GetComponent<Text>().text = content;
    }
#endif

在这个代码中,\u3000 表示全角空格,通过 content += “\u3000” + “\u3000” + str + “\n”; 这一行代码,实现了在当前段落的每行文本前添加两个全角空格,从而实现了首行缩进的效果。

具体来说,+ “\u3000” + “\u3000” + str 这一部分是这个代码中添加空格的主要部分,其中 \u3000 表示一个全角空格,如需要添加更多的空格可以将其重复多次。

另外,由于这段代码使用了 “\n” 来实现换行,需要确保 Text 组件选择的是支持换行的 Horizontal Overflow 模式,例如 Overflow 的值为 Wrap 或者 Overflow。否则,文本将不会自动换行,而是产生横向的滚动条。

猜你喜欢

转载自blog.csdn.net/dzj2021/article/details/130100393
今日推荐