任何人都可以向我解释如何使用PlayerPrefs保存“得分”并将其显示在屏幕上?
public class record : MonoBehaviour{
private Text counterText;
public float score;
void Start()
{
counterText = GetComponent<Text>() as Text;
}
void Update()
{
score += Time.deltaTime;
counterText.text = "Score: " + score.ToString("00");
}}
答案 0 :(得分:3)
您可以为班级添加2种方法
void SaveScore()
{
PlayerPrefs.SetFloat("score", score);
}
void LoadScore()
{
PlayerPrefs.GetFloat("score");
}
有关PlayerPrefs的更多信息,请访问:http://docs.unity3d.com/ScriptReference/PlayerPrefs.html
PlayerPrefs存储在系统注册表中。使用加密来保存得分prefer a simple text file并不是一个好主意:(Stack Overflow,Unity Forum)
答案 1 :(得分:1)
PlayerPrefs
实用程序用于永久存储数据,直到应用程序安装在设备上。支持存储的类型有限,例如float
,int
,string
。您可以进一步使用它,使用int
和string
派生新方法,由您自己决定。
PlayerPrefs
使用Key-Value
结构,这意味着它将对string
键存储值(int,float,string)。例如,我会根据密钥"highscore"
保存高分,并使用相同的string
密钥获取存储的值。
现在,要保存分数,您可以使用
// To set high score
int scoreToSet = 140;
PlayerPrefs.SetInt("highscore", scoreToSet);
// To get high score
int scoreToGet = 0;
scoreToGet = PlayerPrefs.GetInt("highscore");
其中"highscore"
是string
密钥。密钥必须匹配才能获取和设置值。