unity 预制文本\n换行不起作用

这篇具有很好参考价值的文章主要介绍了unity 预制文本\n换行不起作用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

问题:预制体的文本在Inspector直接用\n换行不生效

原因:因为unity会默认把\n替换成\\n

问题:预制体的文本在Inspector直接用\n换行不生效

        预制体文本用换行符直接换好,如果要用代码替换换行,使用\n换行没有生效。

原因:因为unity会默认把\n替换成\\n

        需要把\\n替换成\n,以下是我写的一个替换工具文章来源地址https://www.toymoban.com/news/detail-502013.html

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
using UnityEngine.UI;
using System;
using System.IO;

/// <summary>
/// prefab文本换行替换
/// </summary>
public class PrefabNewLineEditor:EditorWindow
{
    private static string PREFAB_PATH = "Assets/Prefab";

    [MenuItem("Tools/UI/文本换行替换")]
    public static void PrefabNewLineText() 
    {
        string[] allPath = AssetDatabase.FindAssets("t:Prefab",new string[] { PREFAB_PATH } );

        for (int i = 0; i < allPath.Length; i++)
        {
            string path = AssetDatabase.GUIDToAssetPath(allPath[i]);
            var obj = PrefabUtility.InstantiatePrefab(AssetDatabase.LoadAssetAtPath(path, typeof(GameObject))) as GameObject ;
            if (obj != null)
            {
                var texts = obj.GetComponentsInChildren<Text>(true);
                foreach (Text text in texts) 
                {
                    text.text = text.text.Replace("\\n", "\n");
                }
            }
            PrefabUtility.SaveAsPrefabAsset(obj, path);
            GameObject.DestroyImmediate(obj);
        }
        AssetDatabase.SaveAssets();
        AssetDatabase.Refresh();
    }
}

到了这里,关于unity 预制文本\n换行不起作用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity 代码控制Text文本换行

    Unity 要通过代码控制Text文本换行,实现方法比较简单,无论是传统的Text,还是TMP文本,都是通过在字符串需要换行的地方加上换行符【n】。 不过在Text属性栏中要确保设置自动换行模式: 如传统的设置如图: 其实无论哪种,创建的时候换行模式保持默认就行。 代码参考如

    2024年02月03日
    浏览(79)
  • 如何在Unity中实现聊天文本,控制Text文本长度,自动换行

         RectTransform中有个方法SetSizeWithCurrentAnchors,可以设置这个RectTransform的长度或者宽度。 大于你要的长度时,设置成最大长度,否则设置成当前长度。 imgRect是用来设置聊天背景图片的。   这时会发现有一个问题,当内容不足时,不是向左对齐的 ,而是居中缩放。 这是因

    2024年02月05日
    浏览(52)
  • 【100个 Unity实用技能】 | Unity中Text文本框 和 InputField文本输入框 内容换行问题

    🎬 博客主页:https://xiaoy.blog.csdn.net 🎥 本文由 呆呆敲代码的小Y 原创,首发于 CSDN 🙉 🎄 学习专栏推荐:Unity系统学习专栏 🌲 游戏制作专栏推荐:游戏制作 🌲Unity实战100例专栏推荐:Unity 实战100例 教程 🏅 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! 📆 未来很长

    2024年02月11日
    浏览(54)
  • 【100个 Unity实用技能】 | Unity中Text文本框 和 InputField文本输入框 内容换行问题【文末送书】

    🎬 博客主页:https://xiaoy.blog.csdn.net 🎥 本文由 呆呆敲代码的小Y 原创,首发于 CSDN 🙉 🎄 学习专栏推荐:Unity系统学习专栏 🌲 游戏制作专栏推荐:游戏制作 🌲Unity实战100例专栏推荐:Unity 实战100例 教程 🏅 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! 📆 未来很长

    2024年02月12日
    浏览(50)
  • Swagger传参不起作用

    本来是在swagger上面测试的,但是参数没有传进来,debug发现传的courseId为null 这个肯定就是传参的问题 拿去postman测试 发现结果正常   这时候就应该考虑是swagger的问题了 这个时候发现swagger上面的ParameterType是body类型的 那就好解决了,自己的请求地址是代码拼接类型的,也就

    2024年02月02日
    浏览(35)
  • XmlDocument.SelectNodes 不起作用

    今天采用Xpath读取Xml节点,怎么都读不出。 错误代码如下: 经排查 dotnet 文档,发现代码编写没有问题。文档描述如下: 文档示例如下: 示例代码: 示例XML: 自己程序采用Xml:

    2024年02月10日
    浏览(43)
  • Linux 换行符替换问题(window换行\r\n转linux换行\n)

    使用vim打开文件, 进入“末行模式”,输入 :set ff=unix 回车执行,告诉编辑器改为unix换行符 输入 :w 回车,完成保存 相关参考: linux环境中替换window换行符为linux换行符

    2024年02月16日
    浏览(41)
  • github中.gitignore不起作用啦

    提示:人不是靠讲话来生活。每个人都应该靠行动。而行动,是需要时间来证明的。 --《自在独行》 (.gitignore中已经表标明忽略的文件目录下的文件了,所有git push 的时候还是出现在push的目录中,或者使用git status 查看状态,看看想要被忽略的文件是否是显示被跟踪状态) 重

    2024年02月06日
    浏览(37)
  • wx.miniProgram.navigaTo不起作用

    最近写了两个个h5页面嵌套在小程序中,其中有一个按钮点击通过window.location.href跳转到第二个页面,在第二个页面中需要点击跳转按钮跳转到小程序中的某个页面,但是点击了没反应 现将问题记录如下 解决方法 总结: 如果直接用window.location.href这种方式 小程序内嵌h5页面去

    2024年02月11日
    浏览(42)
  • vscode安装中文插件后不起作用

    安装中文插件后,中文并没有如期出现或者偶尔会自动变成英文 方法一: 点击 Uninstall ,重新安装,再重启vscode 方法二: 在vscode中,按住 ctr+shift+p ,在出现的输入框中,输入 Configure Display Language ,在弹出的语言中,选中zh-cn,软件弹出提示。点击重启(Restart)按钮后,中文即可生

    2024年02月07日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包