private void TitleGUI() { if (GUI.Button(new Rect(5, 5, 60, 15), "Create", _preButton)) { //新建一个AB包对象,并将之加入到AB包配置信息对象中 AssetBundleBuildInfo build = new AssetBundleBuildInfo("ab" + System.DateTime.Now.ToString("yyyyMMddHHmmss")); _assetBundle.AssetBundles.Add(build); } //当前未选中任一AB包的话,禁用之后的所有UI控件 GUI.enabled = _currentAB == -1 ? false : true; if (GUI.Button(new Rect(65, 5, 60, 15), "Rename", _preButton)) { _isRename = true; } if (GUI.Button(new Rect(125, 5, 60, 15), "Clear", _preButton)) { if (EditorUtility.DisplayDialog("Prompt", "Clear " + _assetBundle.AssetBundles[_currentAB].Name + " ?", "Yes", "No")) { _assetBundle.AssetBundles[_currentAB].ClearAsset(); } } if (GUI.Button(new Rect(185, 5, 60, 15), "Delete", _preButton)) { if (EditorUtility.DisplayDialog("Prompt", "Delete " + _assetBundle.AssetBundles[_currentAB].Name + "?This will clear all assets!", "Yes", "No")) { _assetBundle.DeleteAssetBundle(_currentAB); _currentAB = -1; } } if (GUI.Button(new Rect(250, 5, 100, 15), "Add Assets", _preButton)) { List <AssetInfo> assets = _asset.GetCheckedAssets(); for (int i = 0; i < assets.Count; i++) { _assetBundle.AssetBundles[_currentAB].AddAsset(assets[i]); } } //取消UI控件的禁用 GUI.enabled = true; _hideInvalidAsset = GUI.Toggle(new Rect(360, 5, 100, 15), _hideInvalidAsset, "Hide Invalid"); _hideBundleAsset = GUI.Toggle(new Rect(460, 5, 100, 15), _hideBundleAsset, "Hide Bundled"); if (GUI.Button(new Rect(250, 25, 60, 15), "Open", _preButton)) { OpenCMDDirectory(string.IsNullOrEmpty(_buildPath) ? "C:\\" : _buildPath); } if (GUI.Button(new Rect(310, 25, 60, 15), "Browse", _preButton)) { SelectDirctory(); } GUI.Label(new Rect(370, 25, 70, 15), "Build Path:"); _buildPath = GUI.TextField(new Rect(440, 25, 300, 15), _buildPath); BuildTarget buildTarget = (BuildTarget)EditorGUI.EnumPopup(new Rect((int)position.width - 205, 5, 150, 15), _buildTarget, _preDropDown); if (buildTarget != _buildTarget) { _buildTarget = buildTarget; EditorPrefs.SetInt("BuildTarget", (int)_buildTarget); } if (GUI.Button(new Rect((int)position.width - 55, 5, 50, 15), "Build", _preButton)) { EditorTool.Build(_asset, _buildPath); Close(); } }