private void PlayerNaming() { if (assetPath.Contains(Paths.PLAYER_PICTURE_FOLDER)) { string name = Path.GetFileNameWithoutExtension(assetPath); // 匹配格式为:1_2 形式 string pattern = "^[0-9]+_[0-9]+$"; Match result = Regex.Match(name, pattern); if (result.Value == "") { if (mFolderData == null) { mFolderData = new FolderData(); mFolderData.FolderPath = Paths.PLAYER_PICTURE_FOLDER; mFolderData.NameTip = "命名格式应为:1_5"; } Debug.LogError(GetType() + "/PlayerNaming()/ The Curretn AssetName is Error, Please check it"); NameMgrWindowData.Add(mFolderData, assetPath); NameMgrWindow.ShowWindow(); } } }
private void OnGUI() { GUILayout.Label("资源名称管理器"); NameMgrWindowData.UpdateData(); foreach (KeyValuePair <FolderData, List <string> > pair in NameMgrWindowData.SpriteDict) { GUILayout.BeginHorizontal(); GUILayout.Label("路径:", GUILayout.MaxWidth(50)); GUILayout.Label(pair.Key.FolderPath, GUILayout.MaxWidth(150)); GUILayout.Label("范例:", GUILayout.MaxWidth(50)); GUILayout.Label(pair.Key.NameTip, GUILayout.MaxWidth(150)); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); foreach (string path in pair.Value) { GUILayout.BeginVertical(); Texture2D texture2D = AssetDatabase.LoadAssetAtPath <Texture2D>(path); GUILayout.Box(texture2D, GUILayout.Height(100), GUILayout.Width(120)); string originName = Path.GetFileNameWithoutExtension(path); if (mNamesDict.ContainsKey(originName) == false) { mNamesDict[originName] = originName; } GUILayout.BeginHorizontal(); mNamesDict[originName] = GUILayout.TextArea(originName, GUILayout.Width(60)); if (GUILayout.Button("确认修改", GUILayout.Width(60))) { if (originName != mNamesDict[originName]) { ChangeFileName(originName, mNamesDict[originName], path); mNamesDict.Remove(originName); } AssetDatabase.Refresh(); } GUILayout.BeginHorizontal(); GUILayout.EndVertical(); } GUILayout.EndHorizontal(); } }