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

Unity 在Editor下保存对Text组件的文本的修改

Unity 在Editor下保存对Text组件的文本的修改

在这里插入图片描述

/****************************************************文件:TimeStampForText.cs作者:lenovo邮箱: 日期:2024/8/8 1:9:21功能:
*****************************************************/using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using Random = UnityEngine.Random;
using System;
using System.Text;#if UNITY_EDITOR
using UnityEditor; 
using UnityEditorInternal;//01 UI会插入该组件后面,比如一个Button会生成在TimeStampForTextMono下  
//02 https://blog.csdn.net/UnityCC0526/article/details/135679648
[CustomEditor(typeof(TimeStampForTextMono))]
public class TimeStampForTextEditor :  Editor
{static string _tmp;//重写OnInspectorGUI类(刷新Inspector面板)public override void OnInspectorGUI(){base.OnInspectorGUI();TimeStampForTextMono mono= (TimeStampForTextMono)target;bool useTimeStamp = false;//不适合眼睛看if (GUILayout.Button("更新时间戳")){DateTime nowDt = DateTime.Now;if (!useTimeStamp){string after = (mono.gameObject.name + nowDt);mono.Text.text = after.ToString();}else{string afterTimeStamp = nowDt.DateTime2TimeStamp().ToString();string after = (mono.gameObject.name + afterTimeStamp);mono.Text.text = after.ToString();}EditorUtility.SetDirty(mono.Text); //不加无法保存在Editor的修改结果}}}#endifpublic class TimeStampForTextMono : MonoBehaviour
{ public Text Text { get {  return GetComponent<Text>();} }}

引申的拓展

public static partial class ExtendDateTime //时间戳与DateTime  //https://www.jb51.net/article/232705.htm
{public static int DateTime2TimeStamp(this DateTime now){int ts = Convert.ToInt32((now - TheFirstYearOfAnEra()).TotalSeconds);return ts;}public static DateTime TimeStamp2DateTime(this long timeStamp){ DateTime preDateTime =  TimeZone.CurrentTimeZone.ToLocalTime(TheFirstYearOfAnEra());long nowTimeStamp = timeStamp * 10000000;TimeSpan nowTimeSpan=new TimeSpan(nowTimeStamp);DateTime newDateTime = preDateTime.Add(nowTimeSpan);return newDateTime;}public static DateTime TimeStamp2DateTime(this int timeStamp){long after = (long)timeStamp;return timeStamp.TimeStamp2DateTime();}public static DateTime TimeStamp2DateTime(this string timeStamp){long after = long.Parse(timeStamp);return timeStamp.TimeStamp2DateTime();}static DateTime TheFirstYearOfAnEra(){return new DateTime(1970, 1, 1, 8, 0, 0);}}
http://www.lryc.cn/news/418900.html

相关文章:

  • mysql 日志爆满,删除日志文件,定时清理日志
  • MySQL学习(19):锁
  • 【出海日记】关于 KD ,数据工具的陷阱
  • 【k8s集群部署篇】在openEuler环境下部署多master高可用kubernetes集群详细教程(V1.30版本)
  • 数据结构:链表经典算法OJ题
  • 【线性代数】【二】2.2 极大线性无关组与向量空间的基
  • OD C卷 - CPU算力分配
  • matlab实现红绿灯识别
  • base64 转 pdf
  • vue2项目微信小程序的tabs切换效果
  • WPF动画的使用
  • 跑腿代购app系统源码开发及功能分析
  • mysql数据库:字符串函数
  • C语言实现游戏2048(超详细!!!超易懂!!!)
  • MATLAB代码检查工具PolySpace
  • FPGA设计之跨时钟域(CDC)设计篇(5)----同步FIFO的两种设计方法(计数器法/高位扩展法 | 手撕代码)
  • 快速掌握Vue:基础命令详解
  • MySQL——索引(二)创建索引(1)创建表的时候创建索引
  • 源代码加密怎么做?企业常用十款源代码加密软件排行榜
  • python 文件打开、读、关闭练习
  • 迈向大规模小目标检测:综述与数据集
  • 69、zabbix自动、代理、snmp监控
  • 搜索引擎设计:如何避免大海捞针般的信息搜索
  • 设计模式- 数据源架构模式
  • Unity 使用字符串更改Text指定文字颜色、大小、换行、透明
  • 数字信号处理2: 离散信号与系统的频谱分析
  • 20240805软考架构--------每日打卡题21-25
  • GPT-5:未来已来,你准备好了吗?
  • 解决C#对Firebase数据序列化失败的难题
  • 设计模式中的类关系