From 246bf528a4471bacb8e33be174c5986ef98123e5 Mon Sep 17 00:00:00 2001 From: taosuqi <2274240467@qq.com> Date: Mon, 7 Apr 2025 09:24:42 +0800 Subject: [PATCH] =?UTF-8?q?4.7=E6=B1=AA=E6=B4=8B=E4=BF=AE=E6=94=B9timeline?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Resources/UI/UIPanel/UI_ExamPanel.prefab | 339 +--------------- Assets/Resources/UI/UI_Item/UI_ExamPanel.meta | 8 + .../UI_Item/UI_ExamPanel/UI_Topicitem.prefab | 375 ++++++++++++++++++ .../UI_ExamPanel/UI_Topicitem.prefab.meta | 7 + Assets/Scripts/Project/ProjectBase/Const.cs | 66 ++- Assets/Scripts/UI/UIItem/UI_Topicitem.meta | 8 + .../UI/UIItem/UI_Topicitem/UI_Topicitem.cs | 22 + .../UIItem/UI_Topicitem/UI_Topicitem.cs.meta | 11 + Assets/Scripts/UI/UIPanel/UI_ExamPanel.cs | 67 +++- Assets/StreamingAssets/题目.json | 54 +++ Assets/StreamingAssets/题目.json.meta | 7 + 11 files changed, 631 insertions(+), 333 deletions(-) create mode 100644 Assets/Resources/UI/UI_Item/UI_ExamPanel.meta create mode 100644 Assets/Resources/UI/UI_Item/UI_ExamPanel/UI_Topicitem.prefab create mode 100644 Assets/Resources/UI/UI_Item/UI_ExamPanel/UI_Topicitem.prefab.meta create mode 100644 Assets/Scripts/UI/UIItem/UI_Topicitem.meta create mode 100644 Assets/Scripts/UI/UIItem/UI_Topicitem/UI_Topicitem.cs create mode 100644 Assets/Scripts/UI/UIItem/UI_Topicitem/UI_Topicitem.cs.meta create mode 100644 Assets/StreamingAssets/题目.json create mode 100644 Assets/StreamingAssets/题目.json.meta diff --git a/Assets/Resources/UI/UIPanel/UI_ExamPanel.prefab b/Assets/Resources/UI/UIPanel/UI_ExamPanel.prefab index c331f8d..a88ac08 100644 --- a/Assets/Resources/UI/UIPanel/UI_ExamPanel.prefab +++ b/Assets/Resources/UI/UIPanel/UI_ExamPanel.prefab @@ -182,8 +182,7 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 220801821943415479} + m_Children: [] m_Father: {fileID: 7835042658044891768} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -221,7 +220,7 @@ MonoBehaviour: m_Padding: m_Left: 20 m_Right: 0 - m_Top: 98 + m_Top: 0 m_Bottom: 0 m_ChildAlignment: 0 m_StartCorner: 0 @@ -341,7 +340,7 @@ MonoBehaviour: m_Elasticity: 0.1 m_Inertia: 1 m_DecelerationRate: 0.135 - m_ScrollSensitivity: 1 + m_ScrollSensitivity: 5 m_Viewport: {fileID: 7835042658044891768} m_HorizontalScrollbar: {fileID: 0} m_VerticalScrollbar: {fileID: 0} @@ -477,8 +476,8 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: -44.440308} + m_SizeDelta: {x: 0, y: -88.8806} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &5615064996399791523 CanvasRenderer: @@ -969,82 +968,6 @@ MonoBehaviour: m_hasFontAssetChanged: 0 m_baseMaterial: {fileID: 0} m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!1 &3792244684572560698 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2289244989292977393} - - component: {fileID: 7216867794828132582} - - component: {fileID: 7098542623364763485} - m_Layer: 5 - m_Name: Checkmark - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &2289244989292977393 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3792244684572560698} - 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: 8493499967550563769} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &7216867794828132582 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3792244684572560698} - m_CullTransparentMesh: 1 ---- !u!114 &7098542623364763485 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3792244684572560698} - 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: 9dc0a2e6e542eab44811c8d65995fed5, 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!1 &3867462995259487489 GameObject: m_ObjectHideFlags: 0 @@ -1940,6 +1863,12 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 588e3c260d621c540a8f805455b6801f, type: 3} m_Name: m_EditorClassIdentifier: + jsonFileName: "\u9898\u76EE" + Root: + choose: [] + Rigcontent: {fileID: 8640685201192089303} + ToggleGroup: {fileID: 8906141710832080119} + UI_Topicitem: {fileID: 17122574755522411, guid: ce731184f571bdc4b9aacb2b3beef586, type: 3} --- !u!1 &6034407815697293954 GameObject: m_ObjectHideFlags: 0 @@ -2297,7 +2226,7 @@ MonoBehaviour: m_Elasticity: 0.1 m_Inertia: 1 m_DecelerationRate: 0.135 - m_ScrollSensitivity: 1 + m_ScrollSensitivity: 5 m_Viewport: {fileID: 992495246382676928} m_HorizontalScrollbar: {fileID: 0} m_VerticalScrollbar: {fileID: 0} @@ -2911,86 +2840,6 @@ MonoBehaviour: m_hasFontAssetChanged: 0 m_baseMaterial: {fileID: 0} m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!1 &6872650343310820137 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8127977837225579300} - - component: {fileID: 2978869891514681130} - - component: {fileID: 2310157286453078489} - m_Layer: 5 - m_Name: Label - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8127977837225579300 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6872650343310820137} - 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: 220801821943415479} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &2978869891514681130 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6872650343310820137} - m_CullTransparentMesh: 1 ---- !u!114 &2310157286453078489 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6872650343310820137} - 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: 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_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: 1 --- !u!1 &7093034894706162165 GameObject: m_ObjectHideFlags: 0 @@ -3824,167 +3673,3 @@ MonoBehaviour: m_hasFontAssetChanged: 0 m_baseMaterial: {fileID: 0} m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!1 &8538521213360402228 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 220801821943415479} - - component: {fileID: 6022416265618631846} - m_Layer: 5 - m_Name: Toggle - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &220801821943415479 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8538521213360402228} - 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: 8493499967550563769} - - {fileID: 8127977837225579300} - m_Father: {fileID: 8640685201192089303} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 1} ---- !u!114 &6022416265618631846 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8538521213360402228} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, 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: 2 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, 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: 21300000, guid: 5c1297268e29fae46b9599338d66268e, type: 3} - m_PressedSprite: {fileID: 21300000, guid: 5c1297268e29fae46b9599338d66268e, type: 3} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 2972231614387621140} - toggleTransition: 1 - graphic: {fileID: 7098542623364763485} - m_Group: {fileID: 8906141710832080119} - onValueChanged: - m_PersistentCalls: - m_Calls: [] - m_IsOn: 1 ---- !u!1 &8771852386673926975 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8493499967550563769} - - component: {fileID: 8589445316492281731} - - component: {fileID: 2972231614387621140} - m_Layer: 5 - m_Name: Background - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8493499967550563769 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8771852386673926975} - 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: 2289244989292977393} - m_Father: {fileID: 220801821943415479} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8589445316492281731 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8771852386673926975} - m_CullTransparentMesh: 1 ---- !u!114 &2972231614387621140 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8771852386673926975} - 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: 28a5298013b4bf842aa0f957f57092de, 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 diff --git a/Assets/Resources/UI/UI_Item/UI_ExamPanel.meta b/Assets/Resources/UI/UI_Item/UI_ExamPanel.meta new file mode 100644 index 0000000..709396a --- /dev/null +++ b/Assets/Resources/UI/UI_Item/UI_ExamPanel.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 886d4d23da7bac5419dca1fd7fe27682 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/UI/UI_Item/UI_ExamPanel/UI_Topicitem.prefab b/Assets/Resources/UI/UI_Item/UI_ExamPanel/UI_Topicitem.prefab new file mode 100644 index 0000000..1c6ff36 --- /dev/null +++ b/Assets/Resources/UI/UI_Item/UI_ExamPanel/UI_Topicitem.prefab @@ -0,0 +1,375 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &439789777321223580 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 756439834367386394} + - component: {fileID: 617631125537456416} + - component: {fileID: 6241689853315664823} + m_Layer: 5 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &756439834367386394 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 439789777321223580} + 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: 6945847007637297746} + m_Father: {fileID: 8985210308636869652} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &617631125537456416 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 439789777321223580} + m_CullTransparentMesh: 1 +--- !u!114 &6241689853315664823 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 439789777321223580} + 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: 28a5298013b4bf842aa0f957f57092de, 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!1 &711420238900701591 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8985210308636869652} + - component: {fileID: 3184740457874942469} + m_Layer: 5 + m_Name: Toggle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8985210308636869652 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 711420238900701591} + 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: 756439834367386394} + - {fileID: 1111812940897244551} + m_Father: {fileID: 5856166328546158090} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &3184740457874942469 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 711420238900701591} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, 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: 2 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, 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: 21300000, guid: 5c1297268e29fae46b9599338d66268e, type: 3} + m_PressedSprite: {fileID: 21300000, guid: 5c1297268e29fae46b9599338d66268e, type: 3} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 6241689853315664823} + toggleTransition: 1 + graphic: {fileID: 2099387529746221566} + m_Group: {fileID: 0} + onValueChanged: + m_PersistentCalls: + m_Calls: [] + m_IsOn: 1 +--- !u!1 &2360198667342366090 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1111812940897244551} + - component: {fileID: 6266338180432003465} + - component: {fileID: 6894660225812934522} + m_Layer: 5 + m_Name: Label + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1111812940897244551 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2360198667342366090} + 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: 8985210308636869652} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &6266338180432003465 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2360198667342366090} + m_CullTransparentMesh: 1 +--- !u!114 &6894660225812934522 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2360198667342366090} + 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: 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_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 1 +--- !u!1 &4955124518415987555 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5856166328546158090} + - component: {fileID: 17122574755522411} + m_Layer: 5 + m_Name: UI_Topicitem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5856166328546158090 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4955124518415987555} + 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: 8985210308636869652} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 38, y: -116} + m_SizeDelta: {x: 36, y: 36} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &17122574755522411 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4955124518415987555} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 658cc54e2092d214d9c3b88343113663, type: 3} + m_Name: + m_EditorClassIdentifier: + toggleText: {fileID: 0} + toggle: {fileID: 0} + examPanel: {fileID: 2376779962638875302, guid: a79f76ed790bcad449a7a0fd9c989e16, type: 3} +--- !u!1 &5404690427993869209 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6945847007637297746} + - component: {fileID: 1983523615097275973} + - component: {fileID: 2099387529746221566} + m_Layer: 5 + m_Name: Checkmark + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6945847007637297746 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5404690427993869209} + 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: 756439834367386394} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1983523615097275973 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5404690427993869209} + m_CullTransparentMesh: 1 +--- !u!114 &2099387529746221566 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5404690427993869209} + 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: 9dc0a2e6e542eab44811c8d65995fed5, 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 diff --git a/Assets/Resources/UI/UI_Item/UI_ExamPanel/UI_Topicitem.prefab.meta b/Assets/Resources/UI/UI_Item/UI_ExamPanel/UI_Topicitem.prefab.meta new file mode 100644 index 0000000..db86d4d --- /dev/null +++ b/Assets/Resources/UI/UI_Item/UI_ExamPanel/UI_Topicitem.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ce731184f571bdc4b9aacb2b3beef586 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Project/ProjectBase/Const.cs b/Assets/Scripts/Project/ProjectBase/Const.cs index 208b06b..b4bc508 100644 --- a/Assets/Scripts/Project/ProjectBase/Const.cs +++ b/Assets/Scripts/Project/ProjectBase/Const.cs @@ -1,11 +1,73 @@ +using System; +using System.Collections.Generic; +using UnityEngine; + + /// /// 关键字管理类 /// -public class Const +public class Const { - + public const string CheckKeyDown = "CheckKeyDown"; public const string CheckKeyUp = "CheckKeyUp"; public const string CheckKey = "CheckKey"; + +} + + + + +[Serializable] +public class ChooseItem +{ + /// + /// 题目序号 + /// + public string topiceNumber; + + + /// + /// 题目类型 0选择题 1判断题 + /// + public string topicetype; + + + /// + /// 题目 VR中的“VR”是指什么? + /// + public string topiceName; + + + /// + ///选择题 A /对 + /// + public string chooseA; + /// + ///选择题 B 判断题 /错 + /// + public string chooseB; + /// + ///选择题 C + /// + public string chooseC; + /// + /// 选择题 D + /// + public string ChooseD; + /// + /// 答案 + /// + public string answer; +} + + +[Serializable] +public class Root +{ + /// + /// + /// + public List choose; } diff --git a/Assets/Scripts/UI/UIItem/UI_Topicitem.meta b/Assets/Scripts/UI/UIItem/UI_Topicitem.meta new file mode 100644 index 0000000..bf00d77 --- /dev/null +++ b/Assets/Scripts/UI/UIItem/UI_Topicitem.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0d03031a006de9e4f8b60d2061373749 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/UI/UIItem/UI_Topicitem/UI_Topicitem.cs b/Assets/Scripts/UI/UIItem/UI_Topicitem/UI_Topicitem.cs new file mode 100644 index 0000000..a8dcae0 --- /dev/null +++ b/Assets/Scripts/UI/UIItem/UI_Topicitem/UI_Topicitem.cs @@ -0,0 +1,22 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.UI; + +public class UI_Topicitem : BaseItem +{ + public Text toggleText; + public Toggle toggle; + private ToggleGroup parentToggleGroup; + + public UI_ExamPanel examPanel; + public void Init(string Topic) + { + toggle = GetControl("Toggle"); + toggleText = GetControl("Label"); + toggleText.text = Topic; + parentToggleGroup =gameObject.GetComponentInParent(); + toggle.group = parentToggleGroup; + } +} + diff --git a/Assets/Scripts/UI/UIItem/UI_Topicitem/UI_Topicitem.cs.meta b/Assets/Scripts/UI/UIItem/UI_Topicitem/UI_Topicitem.cs.meta new file mode 100644 index 0000000..7b66a8a --- /dev/null +++ b/Assets/Scripts/UI/UIItem/UI_Topicitem/UI_Topicitem.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 658cc54e2092d214d9c3b88343113663 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/UI/UIPanel/UI_ExamPanel.cs b/Assets/Scripts/UI/UIPanel/UI_ExamPanel.cs index e9d7d03..634ee8f 100644 --- a/Assets/Scripts/UI/UIPanel/UI_ExamPanel.cs +++ b/Assets/Scripts/UI/UIPanel/UI_ExamPanel.cs @@ -1,19 +1,60 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; +using UnityEngine.UI; + public class UI_ExamPanel : BasePanel { + public string jsonFileName = "Ŀ"; // JSONļ + Root Root = new Root(); + + + public RectTransform Rigcontent; + + public ToggleGroup ToggleGroup; + public UI_Topicitem UI_Topicitem; + protected override void Awake() { + int index = 0; // ڸٵǰǵڼToggle + Root = JsonManager.LoadData(jsonFileName); + foreach (var tmxh in Root.choose) + { + var item = Instantiate(UI_Topicitem, Rigcontent); + item.Init(tmxh.topiceNumber); + var ToogleText = item.GetControl("Label"); + Toggle toggle = item.GetControl("Toggle"); + // ǵһToggleΪѡ״̬ + Debug.Log(toggle.name); + if (index == 0) + { + toggle.isOn = true; + } + + + index++; // + } + + + // ȷ ToggleGroup ״̬ȷ + ToggleGroup.allowSwitchOff = false; + ToggleGroup.SetAllTogglesOff(); + //if (Rigcontent.childCount > 0) + //{ + // Rigcontent.GetChild(0).GetComponent().isOn = true; + //} + //StartCoroutine(SetFirstToggleNextFrame()); base.Awake(); } + public override void ShowMe() { base.ShowMe(); } + public override void HideMe() { base.HideMe(); @@ -24,13 +65,31 @@ public class UI_ExamPanel : BasePanel switch (btnName) { case "retrun_Btn": - Bootstrap.Instance.uiManager.ShowPanel(this, E_UI_Layer.System, (panel) => + Bootstrap.Instance.scenesManager.LoadSceneAsyn(this, "MenuScene", () => { - Debug.Log("UI_ExamPanelʾ"); - Bootstrap.Instance.uiManager.HidePanel(); - Bootstrap.Instance.uiManager.HidePanel(); + Bootstrap.Instance.uiManager.ShowPanel(this, E_UI_Layer.Top, (panel) => + { + Bootstrap.Instance.uiManager.ShowPanel(this, E_UI_Layer.Bot, (panel) => + { + Debug.Log("UI_ExamPanelʾ"); + Bootstrap.Instance.uiManager.HidePanel(); + Bootstrap.Instance.uiManager.HidePanel(); + }); + }); }); + break; } } + + + + //IEnumerator SetFirstToggleNextFrame() + //{ + // yield return null; // ȴһ֡ + // if (Rigcontent.childCount > 0) + // { + // Rigcontent.GetChild(0).GetComponent().isOn = true; + // } + //} } diff --git a/Assets/StreamingAssets/题目.json b/Assets/StreamingAssets/题目.json new file mode 100644 index 0000000..1809272 --- /dev/null +++ b/Assets/StreamingAssets/题目.json @@ -0,0 +1,54 @@ +{ + "choose": [ + { + "topiceNumber": "1", + "topicetype": "0", + "topiceName": "1.VR中的“VR”是指什么?", + "chooseA": "A. Virtual Reality", + "chooseB": "B. Visual Reality", + "chooseC": "C. Vision Reality", + "ChooseD": "D. Virtual Realization", + "answer": "A. Virtual Reality" + }, + { + "topiceNumber": "2", + "topicetype": "0", + "topiceName": "99.VR体验中的延迟过高可能会导致:", + "chooseA": "A. 增加沉浸感", + "chooseB": "B. 用户眩晕", + "chooseC": "C. 提高分辨率", + "ChooseD": "D. 色彩增强", + "answer": "B. 用户眩晕" + }, + { + "topiceNumber": "3", + "topicetype": "0", + "topiceName": "100.VR头显中保持帧率稳定的主要目的是", + "chooseA": "A. 提高分辨率", + "chooseB": "B. 减少眩晕感", + "chooseC": "C. 增加色彩", + "ChooseD": "D. 提高音质", + "answer": "B. 减少眩晕感" + }, + { + "topiceNumber": "4", + "topicetype": "1", + "topiceName": "VR中的虚拟物理碰撞效果通常通过物理引擎实现。", + "chooseA": "对", + "chooseB": "错", + "chooseC": "", + "ChooseD": "", + "answer": "对" + }, + { + "topiceNumber": "5", + "topicetype": "1", + "topiceName": "2.VR体验中延迟越小,用户越不容易产生晕动症", + "chooseA": "对", + "chooseB": "错", + "chooseC": "", + "ChooseD": "", + "answer": "对" + } + ] +} \ No newline at end of file diff --git a/Assets/StreamingAssets/题目.json.meta b/Assets/StreamingAssets/题目.json.meta new file mode 100644 index 0000000..d3e1b2d --- /dev/null +++ b/Assets/StreamingAssets/题目.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8b7b80532290118419a3090d6f9f6cd3 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: