我有一个数组InputFields,在我的处境 - 6 InputFields。我如何获取文本并从每个InputField保存它?如何获取文本并将其保存在InputField中?
一切都应该像这样工作:我打开应用程序,我换一个,两个或全部输入字段,然后关闭应用程序。我再次打开,输入字段必须是我之前写的值。
我必须似乎正常工作代码,但是这个代码是这样的:只需要用户输入的最后一个值,并将其写入到最后一个输入字段。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class SaveText : MonoBehaviour {
public GameObject[] InputFields;
public static string n;
public void Start()
{
for(int i = 0; i < InputFields.Length; i++)
{
InputFields[i].GetComponent<InputField>().text = PlayerPrefs.GetString (InputFields[i].name);
Debug.Log (PlayerPrefs.GetString (InputFields[i].name));
n = InputFields[i].name;
var input = InputFields[i].GetComponent<InputField>();
var se = new InputField.SubmitEvent();
se.AddListener (SubmitName);
input.onEndEdit = se;
}
}
public void SubmitName(string arg)
{
PlayerPrefs.SetString (n, arg);
}
我初始化在Unity拖动每个输入字段在无细胞在脚本组件输入字段的数组。
什么也正是这个问题?您已经拥有数组InputFields中的字段。如果按submitName,则必须循环并从每个框中收集内容。那岂不是坏可以创建包含您要访问 –
@AlexCio 问题每个文本框的属性的对象,我想,当我在输入字段中改变了值,然后切换到另一个场景,或关闭关闭应用程序,我输入的那些值,它们显示在这些字段中,以便输入到下一个编辑。我怎样才能实现这个? –
我希望我能正确理解你想说的话。尝试在我的文章中的方法,它应该工作! –