C# 在输入字段中写入RTL
我试图在unity输入字段中编写波斯语。波斯语是从右向左的语言,它的字母表类似于阿拉伯语 我找到了一个转换和更正文本的方法。很好用。当我将转换后的文本显示为C# 在输入字段中写入RTL,c#,unity3d,unityscript,unity5,C#,Unity3d,Unityscript,Unity5,我试图在unity输入字段中编写波斯语。波斯语是从右向左的语言,它的字母表类似于阿拉伯语 我找到了一个转换和更正文本的方法。很好用。当我将转换后的文本显示为Debug.Log()时,一切都很完美,但问题是当我将更正后的文本放入输入字段时,它会被反转!我试图反转输入字段文本,但什么也没发生 这是我的密码 public InputField empName; PersianMaker pm; string tempStr = ""; private void Start() {
Debug.Log()
时,一切都很完美,但问题是当我将更正后的文本放入输入字段时,它会被反转!我试图反转输入字段文本,但什么也没发生
这是我的密码
public InputField empName;
PersianMaker pm;
string tempStr = "";
private void Start()
{
pm = new PersianMaker();
}
void OnGUI()
{
tempStr = "";
if (!string.IsNullOrEmpty(empName.text))
{
tempStr = pm.ToPersian(empName.text);
tempStr = Regex.Replace(tempStr, @"\s+", " ");
tempStr = tempStr.Trim();
//empName.text = ReverseString(empName.text);
//empName.text = tempStr;
Debug.Log(tempStr);
}
}
private string ReverseString(string s)
{
char[] arr = s.ToCharArray();
Array.Reverse(arr);
return new string(arr);
}
有什么建议吗?您可以使用以下名为 它运行良好,我认为这是唯一可用的解决方案
我做了一些研究,但我发现唯一的一件事是,人们问同样的问题,他们也没有任何答案。将uGUI(
InputField
)与OnGUI混合使用?不要那样做。删除OnGUI代码,并用于注册到输入字段上的提交事件。可能重复