2016-11-05 14 views
0

我有一个带有输入字段和切换组的场景我想在playerprefs中保存玩家输入,因为我将在连续的游戏会话中重复使用它。我还想从切换组中选择的切换标签中获取文本。这是我的代码到目前为止。我有一个编译器错误,说我不能将guitext转换为字符串。我认为我已经保存了输入字段的字符串,并且很好地处理了棘手的切换组。如何使用Unity切换切换组并将选定切换保存在切换组中作为玩家偏好设置?

using UnityEngine; 
    using System.Collections; 
    using UnityEngine.UI; 

    public class CreateHolder : MonoBehaviour { 

    public InputField Input1; 
    public InputField Input2; 
    public InputField Input3; 
    public InputField Input4; 
    public ToggleGroup Discount; 
    public ToggleGroup Params; 
    public ToggleGroup Time; 


    public void Grabdata() { 

    PlayerPrefs.SetString("Offername", Input1.text); 
    if (PlayerPrefs.HasKey("Offername") == true) 
    { 
      Debug.Log("something has saved"); 
      Debug.Log(PlayerPrefs.GetString("Input1").ToString()); 
    } 

    PlayerPrefs.SetString("Offerdesc", Input2.text); 
    PlayerPrefs.SetString("Offeramount", Input3.text); 
    PlayerPrefs.SetString("Offerpercent", Input4.text); 
    PlayerPrefs.SetString("Tog1", Discount.GetComponent<GUIText>()); 
    PlayerPrefs.SetString("Tog2", Params.GetComponent<GUIText>()); 
    PlayerPrefs.SetString("Tog3", Time.GetComponent<GUIText>()); 
    } 
    } 

回答

0

试试这个代码:

using UnityEngine; 
    using System.Collections; 
    using UnityEngine.UI; 

    public class CreateHolder : MonoBehaviour { 

    public InputField Input1; 
    public InputField Input2; 
    public InputField Input3; 
    public InputField Input4; 
    public ToggleGroup Discount; 
    public ToggleGroup Params; 
    public ToggleGroup Time; 


    public void Grabdata() { 

    PlayerPrefs.SetString("Offername", Input1.text); 
    if (PlayerPrefs.HasKey("Offername") == true) 
    { 
      Debug.Log("something has saved"); 
      Debug.Log(PlayerPrefs.GetString("Input1")); 
    } 

    PlayerPrefs.SetString("Offerdesc", Input2.text); 
    PlayerPrefs.SetString("Offeramount", Input3.text); 
    PlayerPrefs.SetString("Offerpercent", Input4.text); 
    PlayerPrefs.SetString("Tog1", Discount.GetComponent<GUIText>().text); 
    PlayerPrefs.SetString("Tog2", Params.GetComponent<GUIText>().text); 
    PlayerPrefs.SetString("Tog3", Time.GetComponent<GUIText>().text); 
    } 
    }