UGUI使用小技巧(六)Unity实现字符串竖行显示

最近遇到一个问题,策划需求,文字像古书那样,从右到左,竖行显示。

以前一直以为UGUI的Text可以满足这个需求,我以为可以设置某个属性,就将现在横排显示的文本变成竖行,做个东西的时候没有找到原生的解决方案,然后在网上简单的扒了一圈,发现有两种解决方法。

第一种是,将设置到Text组件的文本行转列其余的用空格显示。

第二种是重写Text组将的一些函数,具体怎么弄的没看明白。

然后这两种方法我都试了一下,都有Bug,然后我就用一种简单的方法替代了,能解决当前问题。

我是用GridLayoutGroup组件实现这个功能的:

1、在GameObject上添加Text组件做成一个预制Item;

2、将需要竖行显示的文本字符串装换成Char数组;

3、循环数组,实例化Item,将Char数组里面的值设置到Item的Text组件里面, 一个Item设置一个值;(如果你文本里面有换行,你需要计算空格添加到Array或List里面)

4、设置GridLayoutGroup属性,利用GridLayoutGroup实现竖行显示文本的功能。

这里是我GridLayoutGroup设置的属性。效果图如下:

以上就是我通过GridLayoutGroup组件实现字符串竖行显示的方法,如果你文本不多、固定不变的,可以使用这种方法,如果你文本比较多,转出来的字符数组比较大,不建议这样使用。最好的办法应该还是重写Text吧,但是我看了Text源码,不知道从哪里着手。

如果你有更好的方法,期待你的分享!

Unity是一种跨平台的游戏开发引擎,拥有强大的开发工具和资源,可用于制作各种类型的游戏。文字游戏是一种以文字为主要表现形式,通过文字描述和互动来推动剧情发展的游戏。下面是关于Unity文字游戏源码的回答: Unity文字游戏源码是使用Unity引擎开发的文字游戏的源代码。通过Unity的开发工具,开发者可以创建各种游戏对象,并编写脚本来实现游戏逻辑和互动。对于文字游戏来说,源码通常包含了游戏中的各种文本内容、对话系统、剧情触发器以及其他相关功能的实现。 通过Unity文字游戏源码,开发者可以了解游戏的开发思路和实现方法,进而进行二次开发、定制和优化。源码中的脚本可以告诉我们如何处理玩家的输入、如何展示文字内容、如何跟踪游戏进程等等。此外,源码中可能包含了游戏资源的引用和管理,如图片、音频等。 Unity文字游戏源码的使用方法是将源代码导入Unity引擎中,然后通过编译和运行游戏来体验和修改。开发者可以根据自己的需要,对游戏进行定制和改进,比如添加新的剧情内容、修改对话交互方式、美化游戏界面等等。 总之,Unity文字游戏源码是用于开发和定制Unity引擎中的文字游戏的源代码。它提供了实现游戏逻辑和互动的脚本和资源,并且可以通过Unity引擎进行编辑、编译和运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值