瀏覽代碼

卡面滚动

zhaoyang 3 年之前
父節點
當前提交
7a3251bd8b

+ 2 - 2
FGUIProject/assets/Card/ComImgCard.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<component size="1080,1920" overflow="scroll" scroll="horizontal" scrollBarFlags="128">
+<component size="1080,1920" overflow="scroll" scroll="horizontal" scrollBarFlags="128" scrollBar="visible">
   <displayList>
-    <component id="n78_qgxy" name="ComCardImgRes" src="qgxy9s" fileName="ComCardImgRes.xml" xy="0,0" pivot="0.5,0"/>
+    <component id="n78_qgxy" name="ComCardImgRes" src="qgxy9s" fileName="ComCardImgRes.xml" xy="0,0"/>
   </displayList>
 </component>

+ 17 - 10
GameClient/Assets/Game/HotUpdate/Views/Card/CardFosterView.cs

@@ -112,6 +112,7 @@ namespace GFGGame
             base.OnShown();
             _cardData = CardDataManager.GetCardDataById((this.viewData as CardData).id);
 
+            comCardImgResInitSize = Vector2.zero;
             _cardScale = _ui.target.height * 0.8f / _ui.target.initHeight;
             showCard = false;
             Input.multiTouchEnabled = false;
@@ -187,9 +188,14 @@ namespace GFGGame
                 if (comCardImgResInitSize == Vector2.zero)
                 {
                     _ui.m_comImgCard.m_ComCardImgRes.m_loaCard.url = ResPathUtil.GetCardPath(_cardData.resources[_cardData.resIndex]);
-                    comCardImgResInitSize = new Vector2(_ui.m_comImgCard.m_ComCardImgRes.m_loaCard.initWidth * 0.8f, _ui.m_comImgCard.m_ComCardImgRes.m_loaCard.initHeight * 0.8f);
+                    GLoader loaCard = _ui.m_comImgCard.m_ComCardImgRes.m_loaCard;
+                    float scale = _ui.target.height * 0.8f / loaCard.initHeight;
+                    comCardImgResInitSize = new Vector2(loaCard.initWidth * scale, loaCard.initHeight * scale);
+                    // comCardImgResInitSize = new Vector2(_ui.m_comImgCard.m_ComCardImgRes.m_loaCard.initWidth * 0.8f, _ui.m_comImgCard.m_ComCardImgRes.m_loaCard.initHeight * 0.8f);
+                    // _ui.m_comImgCard.target.size = new Vector2(_ui.target.width, _ui.target.height * 0.8f);
                     _ui.m_comImgCard.target.scrollPane.SetPercX(0.5f, false);
                     _ui.m_comImgCard.m_ComCardImgRes.target.size = comCardImgResInitSize;
+
                 }
 
                 //SetSize(_ui.m_comImgCard.m_ComCardImgRes.m_loaCard.initWidth * _cardScale, _ui.m_comImgCard.m_ComCardImgRes.m_loaCard.initHeight * _cardScale);
@@ -642,31 +648,32 @@ namespace GFGGame
             if (!showCard)
             {
                 _ui.m_loaListener1.visible = false;
-                // _ui.m_comImgCard.target.scrollPane.SetPercX(0.5f, true);
                 GTween.To(_ui.m_comImgCard.m_ComCardImgRes.target.size, comCardImgResInitSize * scale, 0.5f).SetTarget(_ui.m_comImgCard.m_ComCardImgRes).OnUpdate((GTweener t) =>
                 {
                     _ui.m_comImgCard.m_ComCardImgRes.target.size = t.value.vec2;
                 });
+
+                GTween.To(_ui.m_comImgCard.target.scrollPane.posX, ((comCardImgResInitSize * scale).x - _ui.target.width) / 2, 0.5f).SetTarget(_ui.m_comImgCard.target.scrollPane).OnUpdate((GTweener t) =>
+                {
+                    _ui.m_comImgCard.target.scrollPane.posX = t.value.x;
+                });
                 _ui.m_t0.Play();
                 showCard = true;
             }
             else
             {
                 _ui.m_loaListener1.visible = true;
-                _ui.m_comImgCard.target.scrollPane.SetPercX(0.5f, true);
-                GTween.To(_ui.m_comImgCard.m_ComCardImgRes.target.size, comCardImgResInitSize, 0.25f).SetTarget(_ui.m_comImgCard).OnUpdate((GTweener t) =>
+                GTween.To(_ui.m_comImgCard.m_ComCardImgRes.target.size, comCardImgResInitSize, 0.5f).SetTarget(_ui.m_comImgCard.m_ComCardImgRes).OnUpdate((GTweener t) =>
                {
                    _ui.m_comImgCard.m_ComCardImgRes.target.size = t.value.vec2;
                });
-
+                GTween.To(_ui.m_comImgCard.target.scrollPane.posX, (comCardImgResInitSize.x - _ui.target.width) / 2, 0.5f).SetTarget(_ui.m_comImgCard.target.scrollPane).OnUpdate((GTweener t) =>
+                {
+                    _ui.m_comImgCard.target.scrollPane.posX = t.value.x;
+                });
                 _ui.m_t1.Play();
                 showCard = false;
             }
-            // _ui.m_t0.Play(() =>
-            // {
-            //     ViewManager.Show(ViewName.CARD_SHOW_VIEW, _cardData, new object[] { ViewName.CARD_FOSTER_VIEW, _cardData });
-
-            // });
         }
         private void OnClickComCard()
         {

二進制
GameClient/Assets/ResIn/UI/Card/Card_fui.bytes