【100个 Unity踩坑小知识点】 | Unity中Text文本框 和 InputField文本输入框 内容换行问题

举报
呆呆敲代码的小Y 发表于 2022/01/14 11:51:54 2022/01/14
【摘要】 Unity 小科普老规矩,先介绍一下 Unity 的科普小知识:Unity是 实时3D互动内容创作和运营平台 。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助 Unity 将创意变成现实。Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机、平板电脑、PC、游戏主机、增强现实和虚拟现实设备。 也可以简单把 Un...

在这里插入图片描述

Unity 小科普

老规矩,先介绍一下 Unity 的科普小知识:

  • Unity是 实时3D互动内容创作和运营平台 。
  • 包括游戏开发美术建筑汽车设计影视在内的所有创作者,借助 Unity 将创意变成现实。
  • Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机平板电脑PC游戏主机增强现实虚拟现实设备。
  • 也可以简单把 Unity 理解为一个游戏引擎,可以用来专业制作游戏

Unity 踩坑小知识点学习

Unity中Text文本框 和 InputField文本输入框 内容换行问题

在进行文本内容输入的时候,可能会遇到想要内容换行的情况。

想要Text文本进行换行很简单,在代码中加入 \n 即可

但是如果我们在Unity 的 Text面板 上手动输入内容加上\n的时候确实没法使其换行

这可能是因为Unity把 \n识别成了 \\n

所以我们可以使用代码来替换 以达到换行的效果,示例如下:

 _t.text = _t.text.Replace("\\n", "\n");

效果如下:
请添加图片描述

但是想要 InputField 输入框 中的内容换行的话这样还不够。

还要在 InputField属性面板 中将内容类型 改为 多行提交 或者 多行新行才可以。
在这里插入图片描述

然后就跟Text文本一样添加 \n代码即可,下面用一个示例来演示效果。

代码如下:

    public Text _text1;
    public InputField _inputField1;

    private float _timer=0f;
    private int _flag = 0;

    void Update()
    {
        _timer += Time.deltaTime;

        if (_timer>=2)
        {
            _text1.text += "Text文本内容增加了!"+ _flag+ "\n";
            _inputField1.text += "InputField输入框内容增加了!" + _flag + "\n";

            _flag++;
            _timer = 0;
        }
    }

效果如下:
请添加图片描述

很简单的一个小功能,但是偶尔用一次反而找不到如何设置,仅此记录一下。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。