当前位置: 首页 > news >正文

vultr怎么做网站品牌词优化

vultr怎么做网站,品牌词优化,个人怎么做ipv6的网站,网站建设支出及维护费应怎样做账字典在Inspector的显示 方法一:实现ISerializationCallbackReceiver接口 《unity3D游戏开发第二版》记录 在编辑面板中可以利用序列化监听接口特性对字典进行序列化。 主要继承ISerializationCallbackReceiver接口 实现OnAfterDeserialize() OnBeforeSerialize() …

字典在Inspector的显示

方法一:实现ISerializationCallbackReceiver接口

《unity3D游戏开发第二版》记录
在编辑面板中可以利用序列化监听接口特性对字典进行序列化。
主要继承ISerializationCallbackReceiver接口 实现OnAfterDeserialize() OnBeforeSerialize() 的方法进行监听序列化和反序列化之前的事件。

例子:
配置的ScriptableObject脚本:

[CreateAssetMenu(fileName = "FileName2PathConfig", menuName = "xasset/Custom/FileName2PathConfig")]public class FileName2PathConfig : ScriptableObject{public SerializationDic<string, string> fileDictionary;}// Dictionary<TKey, TValue> 可序列化字典[Serializable]public class SerializationDic<TKey, TValue> :ISerializationCallbackReceiver{[SerializeField]List<TKey> keys;[SerializeField]List<TValue> values;Dictionary<TKey, TValue> target;public Dictionary<TKey, TValue> ToDictionary() { return target; }public SerializationDic(Dictionary<TKey, TValue> target){this.target = target;}public void OnBeforeSerialize(){keys = new List<TKey>(target.Keys);values = new List<TValue>(target.Values);}public void OnAfterDeserialize(){var count = Math.Min(keys.Count, values.Count);target = new Dictionary<TKey, TValue>(count);for (var i = 0; i < count; ++i){target.Add(keys[i], values[i]);}}}

控制Inspector面板显示的脚本:

[CustomEditor(typeof(SerializationDic<string,string>))]public class SerializationDicEditor : Editor{public override void OnInspectorGUI(){//更新数据serializedObject.Update();SerializedProperty propertyKey=serializedObject.FindProperty("keys");SerializedProperty propertyValue=serializedObject.FindProperty("values");int size=propertyKey.arraySize;GUILayout.BeginVertical();for(int i=0;i<size;i++){GUILayout.BeginHorizontal();SerializedProperty key=propertyKey.GetArrayElementAtIndex(i);SerializedProperty value=propertyValue.GetArrayElementAtIndex(i);key.stringValue=EditorGUILayout.TextField("key",key.stringValue);value.stringValue=EditorGUILayout.TextField("value",value.stringValue);GUILayout.EndHorizontal();}GUILayout.EndVertical();//保存数据serializedObject.ApplyModifiedProperties();}}

效果

方法二 使用插件Odin Inspector 官网

代码:

[CreateAssetMenu(fileName = "FileName2PathConfig", menuName = "xasset/Custom/FileName2PathConfig")]public class FileName2PathConfig : SerializedScriptableObject{[DictionaryDrawerSettings(KeyLabel = "资源名字", ValueLabel = "资源路径")]public Dictionary<string, string> fileDictionary;}

效果:

http://www.yidumall.com/news/35844.html

相关文章:

  • 建设网站的方案网站模板搭建
  • 网站建设与网页制作盒子模型北京seo网站推广
  • 东平做网站今日的最新新闻
  • 福清网站建设郑州seo外包v1
  • 个人nas做网站平板电视seo优化关键词
  • wordpress免费问答模板seo服务靠谱吗
  • 只有做推广才能搜索到网站吗站长之家网站排行榜
  • 杭州市健康城市建设网站网页制作教程书籍
  • 台州网站建设打开百度网址
  • 企业网站seo运营网站建设方案书 模板
  • 石家庄 科技 公司 网站建设企业培训机构有哪些
  • 彩票推广网站如何做站长工具站长之家官网
  • 网络安全公司排名前十名广州网络推广seo
  • 网站架设教程靠谱seo外包定制
  • 江苏建设造价信息网站百度首页
  • 广汉市建设局官方网站直通车关键词优化
  • 动态网站开发有哪些技术软文网官网
  • wordpress本地音乐播放器搜索引擎优化师
  • 做男女的那个视频网站品牌广告
  • dw做网站设计如何制作网页游戏
  • 常州做网站yongjiawebsem搜索引擎营销是什么
  • 佛山网站建设网站建设收费黑龙江最新疫情通报
  • 免费永久个人网站注册怎么做公司网站
  • 手机在线网站什么是电商平台推广
  • 网站建设招标文件seo管理系统创作
  • 类似17做网店的网站中国突然宣布大消息
  • 专业做网站产品上架的有吗线上营销平台
  • 企业做网站的注意什么链接提交工具
  • 创建网站首页在线培训平台哪家好
  • 湖南人工智能建站系统软件优化网站推广网站