Unity中Debug打印信息的颜色设置

为了更好的识别打印信息,这里封装了一下打印信息的工具类,虽然Unity中已经很好的识别..但是自己还是想实现新的工具类

DebugBase脚本:

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class DebugBase<T> where T :new()
{
	/// <summary>
	/// 泛型单例
	/// </summary>
	static T instance;

	public static T Instance {
		get {
			if (instance == null) {
				instance = new T ();
			}
			return instance;
		}
	}

	/// <summary>
	/// 普通打印信息
	/// </summary>
	/// <param name="msg">Message.</param>
	public virtual void Log (string msg)
	{
		if (!string.IsNullOrEmpty (msg)) {
			Debug.Log (msg);
		}
	}

	/// <summary>
	/// 警告打印
	/// </summary>
	/// <param name="msg">Message.</param>
	public virtual void LogWarning (string msg)
	{
		if (!string.IsNullOrEmpty (msg)) {
			Debug.LogWarning (msg);
		}
	}

	/// <summary>
	/// 错误打印
	/// </summary>
	/// <param name="msg">Message.</param>
	public virtual void LogError (string msg)
	{
		if (!string.IsNullOrEmpty (msg)) {
			Debug.LogError (msg);
		}
	}
}

public class GameLog :DebugBase<GameLog>
{
	/// <summary>
	/// 重写父类Log
	/// </summary>
	/// <param name="msg">Message.</param>
	public override void Log (string msg)
	{
		if (!string.IsNullOrEmpty (msg)) {
			base.Log ("*LOG*<color=white>" + msg + "</color>");
		}
	}

	/// <summary>
	/// 重写父类LogWarning
	/// </summary>
	/// <param name="msg">Message.</param>
	public override void LogWarning (string msg)
	{
		if (!string.IsNullOrEmpty (msg)) {
			base.LogWarning ("*Warning*<color=yellow>" + msg + "</color>");
		}
	}

	/// <summary>
	/// 重写父类LogError
	/// </summary>
	/// <param name="msg">Message.</param>
	public override void LogError (string msg)
	{
		if (!string.IsNullOrEmpty (msg)) {
			base.LogError ("*Error*<color=red>" + msg + "</color>");
		}
	}
}

 

  Test脚本:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Test : MonoBehaviour
{
	Button btn;

	// Use this for initialization
	void Start ()
	{
		btn = transform.Find ("Button").GetComponent <Button> ();
		btn.onClick.AddListener (delegate() {
			GameLog.Instance.Log ("这是一个LOG");
			GameLog.Instance.LogWarning ("这是一个LogWarning");
			GameLog.Instance.LogError ("这是一个LogError");
		});
	}
}

  效果如下:

 

转载于:https://www.cnblogs.com/bw1219/p/9436404.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值