- Home /
Save slider value at runtime, and reload latest value on launch
I have an application which has a 'volume trigger' whose sensitivity can be controlled via a slider.
I would like to configure it so that if a user changes the sensitivity and quits the application, the latest value is loaded in the application on launch.
So there are 2 steps, 1 - serializing and saving the slider value, overwriting any previous value
2 -loading this value when the application launches
Can any C# gurus help with some scripting pointers, tips suggestions?
Answer by rutter · Nov 04, 2015 at 10:27 PM
You can use PlayerPrefs to store the value.
Each time the slider is changed, update the value in PlayerPrefs and the volume setting.
For example:
float sliderValue = 0.5f; //TODO: read value from slider
PlayerPrefs.SetFloat("volume", sliderValue);
When the game is launched, or each time you launch a new scene, you can use a function like Start
to read a value from PlayerPrefs. Use that value to populate the slider and volume setting.
For example:
void Start() {
float sliderValue = PlayerPrefs.GetFloat("volume", 0.5f); //second value is default
//TODO: use sliderValue to set up the scene
}
You didn't specify how you're creating the slider, but most slider systems will allow you to easily get & set the current value of the slider.
Your answer
Follow this Question
Related Questions
Data of prefab is not being saved on play mode despite serialization. 1 Answer
Is it possible to create a custom gettter/setter on SerializedProperty ? 0 Answers
Serialized Fields go bye bye on Android 0 Answers
How do I save scripts as variables in the inspector? 0 Answers
EndOfStreamException : Failed to read past end of stream 1 Answer