您的位置:首页 > 移动开发 > Unity3D

Unity之私人订制Debug

2016-12-14 18:20 176 查看
其实原理很简单,这里用到的是富文本的知识,也许大家会觉得这种low定制反而显得麻烦了,那就直接跳过。。。

直接上代码:

using UnityEngine;
using System.Collections;
using System;
using System.Text;

namespace Scripts.CoreScripts.Core.Helper
{
public class Debugger
{
/// <summary>
/// 是否开启Debugger
/// </summary>
static public bool Enable = true;

/// <summary>
/// 默认错误颜色:红色
/// </summary>
static public string ErrorColor = "red";

/// <summary>
/// 默认警告颜色:黄色
/// </summary>
static public string WarningColor = "yellow";

/// <summary>
/// 默认输出颜色:白色
/// </summary>
static public string LogColor = "white";

/// <summary>
/// 默认字号:20
/// </summary>
static public int FontSize = 20;

/// <summary>
/// 默认颜色,默认字号输出
/// </summary>
/// <param name="message">输出内容</param>
static public void Log(object message)
{
if (Enable)
{
Debug.Log("<color=" + LogColor + ">" + "<size=" + FontSize + ">" + message + "</size>" + "</color>");
}
}

/// <summary>
/// 默认颜色,默认字号输出
/// </summary>
/// <param name="message">输出内容</param>
/// <param name="context">连接上下文</param>
static public void Log(object message, UnityEngine.Object context)
{
if (Enable)
{
Debug.Log("<color=" + LogColor + ">" + "<size=" + FontSize + ">" + message + "</size>" + "</color>", context);
}
}

/// <summary>
/// 自定义颜色输出
/// </summary>
/// <param name="message">输出内容</param>
/// <param name="color">颜色</param>
static public void Log(object message, Color32 color)
{
if (Enable)
{
Debug.Log("<color=" + FormatColor32(color) + ">" + message + "</color>");
}
}

/// <summary>
/// 自定义颜色、默认字号输出
/// </summary>
/// <param name="message">输出内容</param>
/// <param name="color">颜色</param>
/// <param name="context">连接上下文</param>
static public void Log(object message, Color32 color, UnityEngine.Object context)
{
if (Enable)
{
Debug.Log("<color=" + FormatColor32(color) + ">" + "<size=" + FontSize + ">" + message + "</size>" + "</color>", context);
}
}

/// <summary>
/// 自定义字号输出
/// </summary>
/// <param name="message">输出内容</param>
/// <param name="fontSize">字号大小,汉字上限26,大写英文上限30,小写英文上限25,仅供参考</param>
static public void Log(object message, int fontSize)
{
if (Enable)
{
Debug.Log("<color=" + LogColor + ">" + "<size=" + FontSize + ">" + message + "</size>" + "</color>");
}
}

/// <summary>
/// 自定义字号输出
/// </summary>
/
c7a3
// <param name="message">输出内容</param>
/// <param name="fontSize">字号</param>
/// <param name="context">连接上下文</param>
static public void Log(object message, int fontSize, UnityEngine.Object context)
{
if (Enable)
{
Debug.Log("<size=" + fontSize + ">" + message + "</size>", context);
}
}

/// <summary>
/// 自定义字号、颜色输出
/// </summary>
/// <param name="message">输出内容</param>
/// <param name="color">颜色</param>
/// <param name="fontsize">字号</param>
static public void Log(object message, Color32 color, int fontsize)
{
if (Enable)
{
Debug.Log("<color=" + FormatColor32(color) + ">" + "<size=" + fontsize + ">" + message + "</size>" + "</color>");
}
}

/// <summary>
/// 自定义字号、颜色输出
/// </summary>
/// <param name="message">输出内容</param>
/// <param name="color">颜色</param>
/// <param name="fontSize">字号</param>
/// <param name="context">连接上下文</param>
static public void Log(object message, Color32 color, int fontSize, UnityEngine.Object context)
{
if (Enable)
{
Debug.Log("<color=" + FormatColor32(color) + ">" + "<size=" + fontSize + ">" + message + "</size>" + "</color>", context);
}
}

static public void LogWarning(object message)
{
if (Enable)
{
Debug.LogWarning("<color=" + WarningColor + ">" + message + "</color>");
}
}

static public void LogWarning(object message, UnityEngine.Object context)
{
if (Enable)
{
Debug.LogWarning("<color=" + WarningColor + ">" + message + "</color>", context);
}
}

static public void LogError(object message)
{
if (Enable)
{
Debug.LogError("<color=" + ErrorColor + ">" + message + "</color>");
}
}

static public void LogError(object message, UnityEngine.Object context)
{
if (Enable)
{
Debug.LogError("<color=" + ErrorColor + ">" + message + "</color>", context);
}
}

/// <summary>
/// 将Color32转换为#FFFFFFFF格式
/// </summary>
/// <param name="color"></param>
/// <returns></returns>
static private string FormatColor32(Color32 color)
{
StringBuilder sb = new StringBuilder();
sb.Append("#");
sb.Append(color.r.ToString("x2"));
sb.Append(color.g.ToString("x2"));
sb.Append(color.b.ToString("x2"));
sb.Append(color.a.ToString("x2"));
return sb.ToString();
}
}
}


以上知识分享,如有错误,欢迎指出,共同学习,共同进步。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: