From 20c643061d323bc868fd08132d47028abe451b34 Mon Sep 17 00:00:00 2001
From: shenjianxing <”315615051@qq.com“>
Date: Mon, 28 Apr 2025 14:48:36 +0800
Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=85=8D=E7=BD=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Data/Xml/13BaoShiFenLei.xml | 48 ++++++++++++++++++-------------------
1 file changed, 24 insertions(+), 24 deletions(-)
diff --git a/Data/Xml/13BaoShiFenLei.xml b/Data/Xml/13BaoShiFenLei.xml
index 6b5cb433..9f5ee3ae 100644
--- a/Data/Xml/13BaoShiFenLei.xml
+++ b/Data/Xml/13BaoShiFenLei.xml
@@ -22,30 +22,30 @@
wrongLabel=""
finishedEvent=""
rightBg="baoshi/背景图.png">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
From a335f2f4bd02dcc2dba134597440b62849aac56c Mon Sep 17 00:00:00 2001
From: shenjianxing <”315615051@qq.com“>
Date: Mon, 28 Apr 2025 14:50:00 +0800
Subject: [PATCH 2/2] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Assets/Art/UIPrefab/UIImageSelectMap.prefab | 94 +++++++++++++++++++--
Assets/Scripts/UI/UIImageSelectMap.cs | 38 ++++++++-
2 files changed, 119 insertions(+), 13 deletions(-)
diff --git a/Assets/Art/UIPrefab/UIImageSelectMap.prefab b/Assets/Art/UIPrefab/UIImageSelectMap.prefab
index f21a5820..8be7007f 100644
--- a/Assets/Art/UIPrefab/UIImageSelectMap.prefab
+++ b/Assets/Art/UIPrefab/UIImageSelectMap.prefab
@@ -159,9 +159,9 @@ RectTransform:
m_Children: []
m_Father: {fileID: 8333043509333940129}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- m_AnchorMin: {x: 0.5, y: 0.5}
- m_AnchorMax: {x: 0.5, y: 0.5}
- m_AnchoredPosition: {x: 0, y: 0}
+ m_AnchorMin: {x: 0, y: 1}
+ m_AnchorMax: {x: 0, y: 1}
+ m_AnchoredPosition: {x: 960, y: -540}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4674184409838659037
@@ -185,7 +185,7 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
- m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_Color: {r: 1, g: 1, b: 1, a: 0}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
@@ -508,7 +508,7 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
m_Content: {fileID: 6336473892143704609}
- m_Horizontal: 1
+ m_Horizontal: 0
m_Vertical: 1
m_MovementType: 1
m_Elasticity: 0.1
@@ -555,7 +555,8 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
- m_Children: []
+ m_Children:
+ - {fileID: 8914544173708230318}
m_Father: {fileID: 8333043509333940129}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
@@ -584,7 +585,7 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
- m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_Color: {r: 1, g: 1, b: 1, a: 0}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
@@ -726,7 +727,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 1, y: 1}
- m_AnchoredPosition: {x: 0, y: 0.0008044916}
+ m_AnchoredPosition: {x: 0, y: 0.0005044027}
m_SizeDelta: {x: 0, y: 300}
m_Pivot: {x: 0, y: 1}
--- !u!114 &1181747651547168674
@@ -749,7 +750,7 @@ MonoBehaviour:
m_ChildAlignment: 0
m_StartCorner: 0
m_StartAxis: 0
- m_CellSize: {x: 100, y: 100}
+ m_CellSize: {x: 120, y: 120}
m_Spacing: {x: 10, y: 10}
m_Constraint: 0
m_ConstraintCount: 2
@@ -769,6 +770,81 @@ MonoBehaviour:
CustomComponentName: Content
CustomComment:
mComponentName: RectTransform
+--- !u!1 &4835406052127461971
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 8914544173708230318}
+ - component: {fileID: 5613198329882542977}
+ - component: {fileID: 6312209549581201463}
+ m_Layer: 0
+ m_Name: Pic
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &8914544173708230318
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4835406052127461971}
+ 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: 5065642014798611877}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0.5, y: 0.5}
+ m_AnchorMax: {x: 0.5, y: 0.5}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 100, y: 100}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &5613198329882542977
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4835406052127461971}
+ m_CullTransparentMesh: 1
+--- !u!114 &6312209549581201463
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4835406052127461971}
+ 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: 0
+ 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!1 &4900020430220917441
GameObject:
m_ObjectHideFlags: 0
diff --git a/Assets/Scripts/UI/UIImageSelectMap.cs b/Assets/Scripts/UI/UIImageSelectMap.cs
index cb10266d..cb29749c 100644
--- a/Assets/Scripts/UI/UIImageSelectMap.cs
+++ b/Assets/Scripts/UI/UIImageSelectMap.cs
@@ -33,6 +33,8 @@ namespace QFramework.Example
GameObject enterRight;
GameObject leftDragObj;
Dictionary itemDatas = new Dictionary();
+
+ Dictionary leftObjAndRightObj = new Dictionary();
protected override void OnInit(IUIData uiData = null)
{
mData = uiData as UIImageSelectMapData ?? new UIImageSelectMapData();
@@ -47,21 +49,24 @@ namespace QFramework.Example
LeftContent.RemoveAllChildren();
RightContent.RemoveAllChildren();
itemDatas.Clear();
+ leftObjAndRightObj.Clear();
foreach (var item in mData.items)
{
var leftObj = GameObject.Instantiate(LeftItem, LeftContent);
+ leftObj.name = item.pic;
var path = Global.imagePath + item.pic;
loader.Add2Load(path.ToNetImageResName(), (success, res) =>
{
if (success)
{
- leftObj.GetComponent().sprite = Utility.GetSprite(res.Asset as Texture2D);
+ leftObj.transform.Find("Pic").GetComponent().sprite = Utility.GetSprite(res.Asset as Texture2D);
}
});
leftObj.OnBeginDragEvent(LeftOnBeginDrag);
leftObj.OnDragEvent(LeftOnDrag);
leftObj.OnEndDragEvent(LeftOnEndDrag);
+ itemDatas.Add(leftObj.gameObject, item);
var rightObj = GameObject.Instantiate(RightItem, RightContent);
rightObj.name = item.pic;
@@ -69,8 +74,7 @@ namespace QFramework.Example
rightObj.rectTransform.sizeDelta = item.size;
rightObj.OnPointerEnterEvent(RightOnEnter);
rightObj.OnPointerExitEvent(RightOnExit);
-
- itemDatas.Add(leftObj.gameObject, item);
+ rightObj.OnPointerClickEvent(RightOnClick);
}
@@ -91,6 +95,27 @@ namespace QFramework.Example
}
+ private void RightOnClick(PointerEventData data)
+ {
+ Transform trans = data.pointerClick.transform;
+ if (trans.childCount > 0)
+ {
+ var child = trans.GetChild(0).gameObject;
+ if (leftObjAndRightObj.ContainsKey(child))
+ {
+ leftObjAndRightObj[child].SetActive(true);
+ leftObjAndRightObj.Remove(child);
+ GameObject.Destroy(child);
+ trans.GetComponent().color = new Color(1, 1, 1, 0);
+
+ }
+ else
+ {
+ Debug.LogError("ûҵӦ");
+ }
+ }
+ }
+
private void RightOnExit(PointerEventData data)
{
enterRight = null;
@@ -104,8 +129,11 @@ namespace QFramework.Example
private void LeftOnBeginDrag(PointerEventData data)
{
leftDragObj = data.pointerDrag;
- moveObj = GameObject.Instantiate(LeftItem.gameObject, gameObject.transform);
+ moveObj = GameObject.Instantiate(leftDragObj, gameObject.transform);
+ moveObj.name = moveObj.name.Replace("(Clone)", "");
+ moveObj.GetComponent().sizeDelta = LeftContent.GetComponent().cellSize;
moveObj.GetComponent().raycastTarget = false;
+
}
private void LeftOnEndDrag(PointerEventData data)
@@ -124,6 +152,8 @@ namespace QFramework.Example
}
moveObj.transform.parent = enterRight.transform;
moveObj.transform.localPosition = Vector3.zero;
+ leftObjAndRightObj.Add(moveObj, leftDragObj);
+ leftDragObj.SetActive(false);
}
else
{