void OnGUI() { GUILayout.Space(20); isHotfix = EditorGUILayout.Toggle(isHotfix ? "热更新模式" : "非热更新模式", isHotfix); if (isHotfix != AppConst.UpdateMode) { if (GUILayout.Button("确认切换")) { ChangHotfix(isHotfix); // 代码更改代码要调用刷新 AssetDatabase.Refresh(); } } EditorGUILayout.LabelField("更换当前Sid"); chooseSID = (SidConfig)EditorGUILayout.EnumPopup(chooseSID.GetDesc(), chooseSID); if (chooseSID != AppConst.sidConfig) { if (GUILayout.Button("确认切换")) { ChangeChannel(chooseChannelType, chooseSID); AssetDatabase.Refresh(); } } GUILayout.Space(20); EditorGUILayout.LabelField("更换当前渠道 但不替换资源"); chooseChannelType = (ChannelType)EditorGUILayout.EnumPopup(chooseChannelType.GetChannelString(), chooseChannelType); if (chooseChannelType != AppConst.channelType) { if (GUILayout.Button("确认切换")) { ChangeChannel(chooseChannelType, chooseSID); AssetDatabase.Refresh(); } } GUILayout.Space(20); EditorGUILayout.LabelField("打包所选渠道"); using (new EditorGUILayout.HorizontalScope()) { for (int i = 0; i < channelTypes.Count; i++) { GetToggle((ChannelType)i); } } if (GUILayout.Button("打包所选")) { string allSid = "打包所选\n"; // 首先判断包类型 然后在判断不同的 sid foreach (KeyValuePair <ChannelType, Dictionary <SidConfig, bool> > channelConfigs in sidConfigs) { willBuildConfigs[channelConfigs.Key] = new List <SidConfig>(); foreach (KeyValuePair <SidConfig, bool> config in channelConfigs.Value) { if (config.Value) { allSid += config.Key.GetDesc() + "\n"; willBuildConfigs[channelConfigs.Key].Add(config.Key); } } } Debug.Log(allSid); } if (willBuildConfigs.Count > 0) { if (GUILayout.Button("确定打包")) { Build(); } } }