完善功能
This commit is contained in:
parent
11da176fab
commit
a335f2f4bd
@ -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
|
||||
|
||||
@ -33,6 +33,8 @@ namespace QFramework.Example
|
||||
GameObject enterRight;
|
||||
GameObject leftDragObj;
|
||||
Dictionary<GameObject, UIImageSelectMapData.OptionItem> itemDatas = new Dictionary<GameObject, UIImageSelectMapData.OptionItem>();
|
||||
|
||||
Dictionary<GameObject, GameObject> leftObjAndRightObj = new Dictionary<GameObject, GameObject>();
|
||||
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<Image>().sprite = Utility.GetSprite(res.Asset as Texture2D);
|
||||
leftObj.transform.Find("Pic").GetComponent<Image>().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<Image>().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<RectTransform>().sizeDelta = LeftContent.GetComponent<GridLayoutGroup>().cellSize;
|
||||
moveObj.GetComponent<Image>().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
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user