diff --git a/Demo/API_V2/Assets/API/APISO.asset b/Demo/API_V2/Assets/API/APISO.asset index 55553c378..81b80af85 100644 --- a/Demo/API_V2/Assets/API/APISO.asset +++ b/Demo/API_V2/Assets/API/APISO.asset @@ -19,8 +19,8 @@ MonoBehaviour: - {fileID: 11400000, guid: 9977a581037b84833a32b508e00eb1a2, type: 2} - {fileID: 11400000, guid: 56f316e0e10ba419bbf19bd7a68bfc4c, type: 2} - {fileID: 11400000, guid: 6f0972f5fdc56c543b23c9873d760bf5, type: 2} - - {fileID: 11400000, guid: a461b8cd70d9e4e23ad1cc953bec31e9, type: 2} - {fileID: 11400000, guid: 7ef06699cee7846b7823e4cc421418eb, type: 2} + - {fileID: 11400000, guid: a461b8cd70d9e4e23ad1cc953bec31e9, type: 2} - {fileID: 11400000, guid: 55de20d536f8c4689bbd80553d87fe46, type: 2} - {fileID: 11400000, guid: f2c56d751bb7c4c398db7c1db352517d, type: 2} - {fileID: 11400000, guid: b4a6196f623dd4435a4f3bd70af92d06, type: 2} diff --git a/Demo/API_V2/Assets/API/Facility/FacilitySO.asset b/Demo/API_V2/Assets/API/Facility/FacilitySO.asset index 248fd99fc..f7bcd18e2 100644 --- a/Demo/API_V2/Assets/API/Facility/FacilitySO.asset +++ b/Demo/API_V2/Assets/API/Facility/FacilitySO.asset @@ -15,10 +15,10 @@ MonoBehaviour: categoryName: "\u8BBE\u5907" categorySprite: {fileID: 21300000, guid: 53dd2b1922e5142ec8a53037f362fc56, type: 3} entryList: - - {fileID: 11400000, guid: bbbc9b983d6d34ad3bac2921509f612f, type: 2} - - {fileID: 11400000, guid: c17ae0ce755f04419b700825b20fd386, type: 2} - {fileID: 11400000, guid: a24af43ae51914d26b0bf637c283dab2, type: 2} - {fileID: 11400000, guid: 4eba2c9f2f2064e4081be74302ca4c33, type: 2} + - {fileID: 11400000, guid: bbbc9b983d6d34ad3bac2921509f612f, type: 2} + - {fileID: 11400000, guid: c17ae0ce755f04419b700825b20fd386, type: 2} - {fileID: 11400000, guid: ac09abff5d8bc48bbabd08bde820b58b, type: 2} - {fileID: 11400000, guid: 3bf339b994c544db3860ddf0a0dc8e20, type: 2} - {fileID: 11400000, guid: e92d94924be504167a342e42e1162f21, type: 2} diff --git a/Demo/API_V2/Assets/API/Facility/Screen/ScreenSO.asset b/Demo/API_V2/Assets/API/Facility/Screen/ScreenSO.asset index 545604476..b7bb2dc9e 100644 --- a/Demo/API_V2/Assets/API/Facility/Screen/ScreenSO.asset +++ b/Demo/API_V2/Assets/API/Facility/Screen/ScreenSO.asset @@ -26,3 +26,4 @@ MonoBehaviour: - buttonText: "\u67E5\u8BE2\u7528\u6237\u662F\u5426\u5728\u5F55\u5C4F" - buttonText: "\u83B7\u53D6\u5C4F\u5E55\u4EAE\u5EA6" initialResultList: [] + entryOrder: 0 diff --git a/Demo/API_V2/Assets/API/FileSystem/FileSystemSO.asset b/Demo/API_V2/Assets/API/FileSystem/FileSystemSO.asset index 2b8fc9628..b711979f0 100644 --- a/Demo/API_V2/Assets/API/FileSystem/FileSystemSO.asset +++ b/Demo/API_V2/Assets/API/FileSystem/FileSystemSO.asset @@ -24,8 +24,8 @@ MonoBehaviour: - {fileID: 11400000, guid: 65ab1b01a722b4542a14fcf9decca3de, type: 2} - {fileID: 11400000, guid: 19b80cb144f0c4ea28a4ddca7a2c2f09, type: 2} - {fileID: 11400000, guid: 0aa5d76237c844275add1612c47bddaa, type: 2} - - {fileID: 11400000, guid: 73c05fc1ffae94ec1b69a00ee261d529, type: 2} - {fileID: 11400000, guid: 65a826f5f949544d8990e673231bb80f, type: 2} + - {fileID: 11400000, guid: 73c05fc1ffae94ec1b69a00ee261d529, type: 2} - {fileID: 11400000, guid: 3a901e80b59ad4aafbe373ee6a8df2d8, type: 2} - {fileID: 11400000, guid: e7ea0be62dc6543b0a8dc629489c5e7e, type: 2} categoryOrder: 11 diff --git a/Demo/API_V2/Assets/API/Media/VideoDecoder/VideoDecoderSO.asset b/Demo/API_V2/Assets/API/Media/VideoDecoder/VideoDecoderSO.asset index 4f78149ae..08a737135 100644 --- a/Demo/API_V2/Assets/API/Media/VideoDecoder/VideoDecoderSO.asset +++ b/Demo/API_V2/Assets/API/Media/VideoDecoder/VideoDecoderSO.asset @@ -23,3 +23,4 @@ MonoBehaviour: - buttonText: "\u8DF3\u8F6C" - buttonText: "\u83B7\u5F97\u4E0B\u4E00\u5E27" initialResultList: [] + entryOrder: 0 diff --git a/Demo/API_V2/Assets/API/Render/RenderSO.asset b/Demo/API_V2/Assets/API/Render/RenderSO.asset index 4c2494aab..bff64941e 100644 --- a/Demo/API_V2/Assets/API/Render/RenderSO.asset +++ b/Demo/API_V2/Assets/API/Render/RenderSO.asset @@ -17,4 +17,5 @@ MonoBehaviour: entryList: - {fileID: 11400000, guid: 3742edf3f50854504ba8632134064e94, type: 2} - {fileID: 11400000, guid: c185ac653050d49608ea734a26e8dbaa, type: 2} + - {fileID: 11400000, guid: f9a70ffa3b7f4db40b550f6b153c4ed2, type: 2} categoryOrder: 8 diff --git a/Demo/API_V2/Assets/API/Render/ToTempFilePath.meta b/Demo/API_V2/Assets/API/Render/ToTempFilePath.meta new file mode 100644 index 000000000..18e8f1756 --- /dev/null +++ b/Demo/API_V2/Assets/API/Render/ToTempFilePath.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5784973ccf99f484198e8dd2b5f8a886 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePath.cs b/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePath.cs new file mode 100644 index 000000000..60862b628 --- /dev/null +++ b/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePath.cs @@ -0,0 +1,140 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using WeChatWASM; +using LitJson; + +public class ToTempFilePath : Details +{ + protected override void TestAPI(string[] args) + { + if (args[0] == "同步执行") + { + LoadCanvasToTempFilePathSync(); + } + else + { + LoadCanvasToTempFilePath(); + } + } + + // 异步 + private void LoadCanvasToTempFilePath() + {// 根据options数组的索引获取值 + float x = GetOptionValue(1); + float y = GetOptionValue(2); + float width = GetOptionValue(3); + float height = GetOptionValue(4); + float destWidth = GetOptionValue(5); + float destHeight = GetOptionValue(6); + string fileType = GetOptionString(7, "png"); + float quality = GetOptionValue(8); + + string optionsInfo = $"当前参数值:\nx={x}\ny={y}\nwidth={width}\nheight={height}\ndestWidth={destWidth}\ndestHeight={destHeight}\nfileType={fileType}\nquality={quality}"; + + WXCanvas.ToTempFilePath(new WXToTempFilePathParam() + { + x = (int)x, + y = (int)y, + width = (int)width, + height = (int)height, + destWidth = (int)destWidth, + destHeight = (int)destHeight, + fileType = fileType, + quality = (int)quality, + + success = (result) => + { + WX.ShowModal(new ShowModalOption() + { + title = "截图成功(异步)", + content = $"{optionsInfo}\n\n临时文件路径:\n{result.tempFilePath}", + showCancel = false, + confirmText = "展示截图", + success = (res) => + { + WX.PreviewMedia(new PreviewMediaOption() + { + sources = new[] { new MediaSource { url = result.tempFilePath, type = "image" } }, + current = 0, + success = (res) => + { + Debug.Log("预览成功"); + }, + fail = (res) => + { + Debug.Log("预览失败"); + } + }); + } + }); + }, + fail = (result) => + { + WX.ShowModal(new ShowModalOption() + { + title = "截图失败", + content = JsonUtility.ToJson(result), + showCancel = false + }); + }, + complete = (result) => + { + Debug.Log("complete"); + }, + }); + } + + // 同步 + private void LoadCanvasToTempFilePathSync() + { + + // 根据options数组的索引获取值 + float x = GetOptionValue(1); + float y = GetOptionValue(2); + float width = GetOptionValue(3); + float height = GetOptionValue(4); + float destWidth = GetOptionValue(5); + float destHeight = GetOptionValue(6); + string fileType = GetOptionString(7, "png"); + float quality = GetOptionValue(8); + + string optionsInfo = $"当前参数值:\nx={x}\ny={y}\nwidth={width}\nheight={height}\ndestWidth={destWidth}\ndestHeight={destHeight}\nfileType={fileType}\nquality={quality}"; + + var tempFilePath = WXCanvas.ToTempFilePathSync(new WXToTempFilePathSyncParam() + { + x = (int)x, + y = (int)y, + width = (int)width, + height = (int)height, + destWidth = (int)destWidth, + destHeight = (int)destHeight, + fileType = fileType, + quality = (int)quality, + }); + // 显示同步访问的结果 + WX.ShowModal(new ShowModalOption() + { + title = "截图成功(同步)", + content = $"{optionsInfo}\n\n临时文件路径:\n{tempFilePath}", + showCancel = false, + confirmText = "展示截图", + success = (res) => + { + WX.PreviewMedia(new PreviewMediaOption() + { + sources = new[] { new MediaSource { url = tempFilePath, type = "image" } }, + current = 0, + success = (res) => + { + Debug.Log("预览成功"); + }, + fail = (res) => + { + Debug.Log("预览失败"); + } + }); + } + }); + } +} \ No newline at end of file diff --git a/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePath.cs.meta b/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePath.cs.meta new file mode 100644 index 000000000..7f5ef866f --- /dev/null +++ b/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePath.cs.meta @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: e3b0e3d464c03264fa2ea04cea1803a0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: + - entrySO: {fileID: 11400000, guid: f9a70ffa3b7f4db40b550f6b153c4ed2, type: 2} + - toTempFilePathSO: {instanceID: 0} + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePathSO.asset b/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePathSO.asset new file mode 100644 index 000000000..cdd131a5e --- /dev/null +++ b/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePathSO.asset @@ -0,0 +1,58 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fb48e4613a53bb941a20036d7c08fefb, type: 3} + m_Name: ToTempFilePathSO + m_EditorClassIdentifier: + entryScriptTypeName: ToTempFilePath + entryName: "\u622A\u5C4F" + entryAPI: Canvas.toTempFilePath + entryDescription: "\u5C06\u5F53\u524D Canvas \u4FDD\u5B58\u4E3A\u4E00\u4E2A\u4E34\u65F6\u6587\u4EF6\u3002" + optionList: + - optionName: "\u6267\u884C\u65B9\u5F0F" + availableOptions: + - "\u540C\u6B65\u6267\u884C" + - "\u5F02\u6B65\u6267\u884C" + - optionName: x + availableOptions: + - 0 + - 500 + - optionName: y + availableOptions: + - 0 + - 500 + - optionName: width + availableOptions: + - 0 + - 400 + - optionName: height + availableOptions: + - 0 + - 800 + - optionName: destWidth + availableOptions: + - 0 + - 800 + - optionName: destHeight + availableOptions: + - 0 + - 800 + - optionName: fileType + availableOptions: + - png + - jpg + - optionName: quality + availableOptions: + - 1.0 + initialButtonText: "\u8FD0\u884C\u622A\u56FE" + extraButtonList: [] + initialResultList: [] + entryOrder: 0 diff --git a/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePathSO.asset.meta b/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePathSO.asset.meta new file mode 100644 index 000000000..5356308c3 --- /dev/null +++ b/Demo/API_V2/Assets/API/Render/ToTempFilePath/ToTempFilePathSO.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f9a70ffa3b7f4db40b550f6b153c4ed2 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Demo/API_V2/Assets/API/Report/ReportEvent/ReportEventSO.asset b/Demo/API_V2/Assets/API/Report/ReportEvent/ReportEventSO.asset index 717e45b70..d32d367fc 100644 --- a/Demo/API_V2/Assets/API/Report/ReportEvent/ReportEventSO.asset +++ b/Demo/API_V2/Assets/API/Report/ReportEvent/ReportEventSO.asset @@ -28,3 +28,4 @@ MonoBehaviour: initialButtonText: "\u4E8B\u4EF6\u4E0A\u62A5" extraButtonList: [] initialResultList: [] + entryOrder: 0 diff --git a/Demo/API_V2/Assets/API/Share/ShareEvent/ShareEventSO.asset b/Demo/API_V2/Assets/API/Share/ShareEvent/ShareEventSO.asset index 02a01eee4..e8e3af244 100644 --- a/Demo/API_V2/Assets/API/Share/ShareEvent/ShareEventSO.asset +++ b/Demo/API_V2/Assets/API/Share/ShareEvent/ShareEventSO.asset @@ -28,3 +28,4 @@ MonoBehaviour: - buttonText: "\u76D1\u542Csharetofriend" - buttonText: "\u76D1\u542C\u53F3\u4E0A\u89D2\u83DC\u5355\u7684\u8F6C\u53D1" initialResultList: [] + entryOrder: 0 diff --git a/Demo/API_V2/Assets/API/Share/ShareEvent2/ShareEvent2SO.asset b/Demo/API_V2/Assets/API/Share/ShareEvent2/ShareEvent2SO.asset index d4f27195d..c47c6e5ef 100644 --- a/Demo/API_V2/Assets/API/Share/ShareEvent2/ShareEvent2SO.asset +++ b/Demo/API_V2/Assets/API/Share/ShareEvent2/ShareEvent2SO.asset @@ -24,3 +24,4 @@ MonoBehaviour: - buttonText: "\u83B7\u53D6\u8F6C\u53D1\u8BE6\u7EC6\u4FE1\u606F" - buttonText: "\u9A8C\u8BC1\u79C1\u5BC6\u6D88\u606F" initialResultList: [] + entryOrder: 0 diff --git a/Demo/API_V2/Assets/Scenes/MainScene.unity b/Demo/API_V2/Assets/Scenes/MainScene.unity index 53e3130f1..adfe5d81c 100644 --- a/Demo/API_V2/Assets/Scenes/MainScene.unity +++ b/Demo/API_V2/Assets/Scenes/MainScene.unity @@ -38,7 +38,7 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 170076734} - m_IndirectSpecularColor: {r: 0.4465788, g: 0.49641275, b: 0.5748176, a: 1} + m_IndirectSpecularColor: {r: 0.44657826, g: 0.49641263, b: 0.57481676, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: @@ -3663,6 +3663,81 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: 1 m_LayoutPriority: 1 +--- !u!1 &220669354 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 220669355} + - component: {fileID: 220669357} + - component: {fileID: 220669356} + m_Layer: 5 + m_Name: Arrow + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &220669355 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 220669354} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.7, y: 0.7, z: 0.7} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 848500029} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0.5} + m_AnchorMax: {x: 1, y: 0.5} + m_AnchoredPosition: {x: -25, y: 0} + m_SizeDelta: {x: 72, y: 72} + m_Pivot: {x: 1, y: 0.5} +--- !u!114 &220669356 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 220669354} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: b1a5e6c3cca1748e0a56f2485c899ceb, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &220669357 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 220669354} + m_CullTransparentMesh: 0 --- !u!1 &221763189 GameObject: m_ObjectHideFlags: 0 @@ -14845,6 +14920,7 @@ RectTransform: m_Children: - {fileID: 1859644481} - {fileID: 374767485} + - {fileID: 848500029} m_Father: {fileID: 257581116} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} @@ -17823,6 +17899,165 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 836805604} m_CullTransparentMesh: 0 +--- !u!1 &848500028 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 848500029} + - component: {fileID: 848500034} + - component: {fileID: 848500033} + - component: {fileID: 848500032} + - component: {fileID: 848500031} + - component: {fileID: 848500030} + m_Layer: 5 + m_Name: "\u622A\u5C4F" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &848500029 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848500028} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 984832399} + - {fileID: 220669355} + - {fileID: 1309008208} + m_Father: {fileID: 692947279} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 500, y: -80} + m_SizeDelta: {x: 1000, y: 160} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &848500030 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848500028} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 1, g: 1, b: 1, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 1, g: 1, b: 1, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 848500033} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &848500031 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848500028} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 36afc0df23af49b5a395bf8d010e7c03, type: 3} + m_Name: + m_EditorClassIdentifier: + entrySO: {fileID: 11400000, guid: f9a70ffa3b7f4db40b550f6b153c4ed2, type: 2} + entryNameText: {fileID: 984832401} +--- !u!114 &848500032 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848500028} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 160 + m_FlexibleWidth: 1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!114 &848500033 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848500028} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &848500034 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848500028} + m_CullTransparentMesh: 0 --- !u!1 &850122570 GameObject: m_ObjectHideFlags: 0 @@ -20620,6 +20855,98 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 981974621} m_CullTransparentMesh: 0 +--- !u!1 &984832398 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 984832399} + - component: {fileID: 984832402} + - component: {fileID: 984832401} + - component: {fileID: 984832400} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &984832399 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 984832398} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 848500029} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -40, y: 0} + m_SizeDelta: {x: -160, y: -90} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &984832400 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 984832398} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ad114bb7e387d46d7a9ad7af676060d0, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &984832401 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 984832398} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 12800000, guid: 04a37534e45184b62bc44e172e5fe81e, type: 3} + m_FontSize: 45 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 0 + m_MaxSize: 230 + m_Alignment: 3 + m_AlignByGeometry: 1 + m_RichText: 0 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: ToTempFilePath +--- !u!222 &984832402 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 984832398} + m_CullTransparentMesh: 0 --- !u!1 &988139527 GameObject: m_ObjectHideFlags: 0 @@ -27197,6 +27524,81 @@ MonoBehaviour: m_ChildScaleWidth: 0 m_ChildScaleHeight: 0 m_ReverseArrangement: 0 +--- !u!1 &1309008207 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1309008208} + - component: {fileID: 1309008210} + - component: {fileID: 1309008209} + m_Layer: 5 + m_Name: Line + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1309008208 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1309008207} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 848500029} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: -50, y: 2} + m_Pivot: {x: 0.5, y: 0} +--- !u!114 &1309008209 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1309008207} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.9333334, g: 0.9333334, b: 0.9333334, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1309008210 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1309008207} + m_CullTransparentMesh: 0 --- !u!1 &1311586224 GameObject: m_ObjectHideFlags: 0 diff --git a/Demo/API_V2/Assets/Scripts/Details.cs b/Demo/API_V2/Assets/Scripts/Details.cs index de5bf294a..9e9e2c9b4 100644 --- a/Demo/API_V2/Assets/Scripts/Details.cs +++ b/Demo/API_V2/Assets/Scripts/Details.cs @@ -34,4 +34,40 @@ public void Run() // 抽象方法,由子类实现具体的测试 API 逻辑 protected abstract void TestAPI(string[] args); + + protected float GetOptionValue(int optionIndex, float defaultValue = 0f) + { + if (options != null && optionIndex < options.Length) + { + if (float.TryParse(options[optionIndex], out float value)) + { + return value; + } + } + return defaultValue; + } + //获得选项String类型值 + protected string GetOptionString(int optionIndex, string defaultValue = "") + { + if (options != null && optionIndex < options.Length) + { + return options[optionIndex]; + } + return defaultValue; + } + // 打印当前选项的值 + protected void LogCurrentOptions() + { + if (options != null) + { + for (int i = 0; i < options.Length; i++) + { + Debug.Log($"Option {i}: {options[i]}"); + } + } + else + { + Debug.Log("Options array is null"); + } + } }