位置: 编程技术 - 正文
推荐整理分享关于 Unity3D 持久化数据存储的笔记 之 PlayerPrefs(unity持久化存储),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:unity持久化,unity持久化存储,unity 持久化数据,unity持久化,unity3d总结,unity长期支持版,unity3d操作,unity持久化,内容如对您有帮助,希望把文章链接给更多的朋友!
持久化数据存储这个话题,无论在iOS、安卓都会经常见到的,更何况是跨平台的Unity。
首先我们说说最简单数据存储的方式吧。
1.PlayerPrefs类
在iOS 里面我们常用一种简单的方式存储读取简单的数据,就是通过 NSUserDefaults类来获取数据、读取数据。
而安卓处也有类的方式进行存储、获取数据。
当然我们要学习的Unity 也有类的方式进行存储、获取数据。
下面我就用iOS 来讲解一下。
iOS 的数据存储是:
[[NSUserDefaults standardUserDefaults]setObject:@"我是木子才!" forKey:@"name"];
而读取数据则是:
NSString *content = [[NSUserDefaultsstandardUserDefaults]objectForKey:@"name"];
就是这么简单,所以很多人都很随意的往里面保存数据,我汗~~~
当然封装一下更为方便,简单,快捷。
然后,我们来看看 Unity 是怎么来搞的吧。
数据存储是:
PlayerPrefs.SetString("name", "我是木子才!");
而读取数据则是:
string m_info = PlayerPrefs.GetString("name");
其实这样看上去也是挺简单的,使用方式都是差不多啊,安卓也是类的,不过安卓的更加强大一点。
/*****************我是动人的分割线****************/
好了,现在我们来看看 PlayerPrefs 这个类吧。
PlayerPrefs 可以保存、读取3种基本的数据类型,分别是整型、浮点型和字符串。方法如下:
public static function SetInt(key: string, value: int): void; -> 保存整型数据
public static function SetFloat(key: string, value: float): void; -> 保存浮点型数据
public static function SetString(key: string, value: string): void; -> 保存字符串数据
public static function GetInt(key: string, defaultValue: int = 0): int; -> 读取整型数据
public static function GetFloat(key: string, defaultValue: float = 0.0F): float; -> 读取浮点型数据
public static function GetString(key: string, defaultValue: string = ""): string; -> 读取字符串数据
使用方式,请自行参考上面的示范。很简单的。
Set保存的时候需要两个参数来确定,第一个是键,第二个是。
Get读取的时候需要一个参数来确定,那就是键。
官方文档上还有几个方法。我们来看看吧~~
public static function DeleteAll(): void; -> 删除全部键内容、内容,简称清空数据。
public static function DeleteKey(key: string): void; -> 删除指定的键,和它所对应的。
public static function HasKey(key: string): bool; -> 判断指定的键是否存在,存在则返回真 true。
/*****************广告招租~~~****************/
现在来实践一下吧。
首先来个代码吧,假如看不懂代码的话,可以看看关于 Unity3D 网络请求的笔记 这个文章。
代码如下:
完成之后你会看到这个界面的,当你把代码敲完之后运行也是这个效果的,duang~~~点了写入数据的按钮后,是没有变化的~~~
然后,再点击一下读取数据,你就会看到效果了,duang~~~~
当你点击第三个按钮的话,会变成第一张图片的效果,然后你就再点击读取数据的按钮再次看见效果。
随意玩弄吧。
之后,当你退出了,进入的时候,点击读取数据的按钮,也会看见效果~~~~duang~~~~
这次就这样吧~~~谢谢大家了~~~
作者:木子才iOS开发者俱乐部 有空可以加入这里一起探讨问题,由于群小,请输入验证信息。验证信息是objective-C代码、或其他语言代码。
ThreadPool.RegisterWaitForSingleObject 设置等待超时事件 在做文件下载功能时,经常出现网络状况不好而导致文件下载失败的情况,但是这种情况下又不能捕获到异常或者Timeout回调,如果放之自流,文件将长
Unity Enemy behaviour usingUnityEngine;usingSystem.Collections;publicclassenemyBehaviour:MonoBehaviour{//enemythatmovestoplayerwhencloseenoughpublicfloatspeed=6f;publicTransformplayer;publicfloatenemySight=f;publicAudi
Unity KillCount usingUnityEngine;usingSystem.Collections;publicclassKillCountMult:MonoBehaviour{publicGUITextkText;publicstaticintkills1;publicstaticintkills2;publicstaticboolplayerKilled;publicstaticboolplayer2Kille
标签: unity持久化存储
本文链接地址:https://www.jiuchutong.com/biancheng/382620.html 转载请保留说明!友情链接: 武汉网站建设