滑动条修改提交
parent
5cf3388a59
commit
34357fddff
|
@ -85,28 +85,78 @@ local function SetPosition(self, dv2,isBack)
|
||||||
else
|
else
|
||||||
dv2.y = 0
|
dv2.y = 0
|
||||||
end
|
end
|
||||||
local fv2 = av2 + dv2
|
|
||||||
|
|
||||||
--if not self.elastic then
|
--if not self.elastic then
|
||||||
if self.itemDis > 0 then
|
if self.itemDis > 0 then
|
||||||
if self.dragType == 1 then
|
if self.dragType == 1 then
|
||||||
if fv2.y < (0 - self.maxOffSet) or fv2.y > (self.itemDis + self.maxOffSet) then
|
if av2.y < (0 - self.maxOffSet) then
|
||||||
fv2.y = math.clamp(fv2.y, 0, self.itemDis)
|
self.isReachMax = 1
|
||||||
if not isBack then
|
elseif av2.y > (self.itemDis + self.maxOffSet) then
|
||||||
return
|
self.isReachMax = 2
|
||||||
end
|
else
|
||||||
|
self.isReachMax = 0
|
||||||
end
|
end
|
||||||
elseif self.dragType == 2 then
|
elseif self.dragType == 2 then
|
||||||
if fv2.x < (0 - self.maxOffSet) or fv2.x > (self.itemDis + self.maxOffSet) then
|
if av2.x > (0 + self.maxOffSet) then
|
||||||
fv2.x = math.clamp(-fv2.x, -self.itemDis, 0)
|
self.isReachMax = 1
|
||||||
if not isBack then
|
elseif av2.x < -(self.itemDis + self.maxOffSet) then
|
||||||
return
|
self.isReachMax = 2
|
||||||
end
|
else
|
||||||
|
self.isReachMax = 0
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
self.realPos = av2 + dv2
|
||||||
|
if self.isReachMax ~= 0 then
|
||||||
|
self.moveTween.MomentumAmount = 0
|
||||||
|
self.moveTween.Momentum = Vector3.zero
|
||||||
|
self.moveTween.Strength = 10
|
||||||
|
self.moveTween:LerpMomentum(Vector3.zero)
|
||||||
|
if self.dragType == 1 then
|
||||||
|
if (self.realPos + dv2).y < self.realPos.y and self.isReachMax == 1 then
|
||||||
|
dv2.y = 0
|
||||||
|
elseif (self.realPos + dv2).y > self.realPos.y and self.isReachMax == 2 then
|
||||||
|
dv2.y = 0
|
||||||
|
end
|
||||||
|
else
|
||||||
|
if (self.realPos + dv2).x > self.realPos.x and self.isReachMax == 1 then
|
||||||
|
dv2.x = 0
|
||||||
|
elseif (self.realPos + dv2).x < self.realPos.x and self.isReachMax == 2 then
|
||||||
|
dv2.x = 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
self.moveTween.Strength = 1
|
||||||
|
self.moveTween.MomentumAmount = 1
|
||||||
|
end
|
||||||
|
local fv2 = av2 + dv2
|
||||||
|
|
||||||
|
-- --if not self.elastic then
|
||||||
|
-- if self.itemDis > 0 then
|
||||||
|
-- if self.dragType == 1 then
|
||||||
|
-- if fv2.y < (0 - self.maxOffSet) then
|
||||||
|
-- fv2.y = 0 - self.maxOffSet
|
||||||
|
-- self.isReachMax = true
|
||||||
|
-- elseif fv2.y > (self.itemDis + self.maxOffSet) then
|
||||||
|
-- fv2.y = self.itemDis + self.maxOffSet
|
||||||
|
-- self.isReachMax = true
|
||||||
|
-- else
|
||||||
|
-- self.isReachMax = false
|
||||||
|
-- end
|
||||||
|
-- elseif self.dragType == 2 then
|
||||||
|
-- if fv2.x > (0 + self.maxOffSet) then
|
||||||
|
-- fv2.x = (0 + self.maxOffSet)
|
||||||
|
-- self.isReachMax = true
|
||||||
|
-- elseif fv2.x < -(self.itemDis + self.maxOffSet) then
|
||||||
|
-- fv2.x = -(self.itemDis + self.maxOffSet)
|
||||||
|
-- self.isReachMax = true
|
||||||
|
-- else
|
||||||
|
-- self.isReachMax = false
|
||||||
|
-- end
|
||||||
|
-- end
|
||||||
|
-- else
|
||||||
|
-- return
|
||||||
-- end
|
-- end
|
||||||
self.dragGOTran.anchoredPosition = fv2
|
self.dragGOTran.anchoredPosition = fv2
|
||||||
|
|
||||||
|
@ -132,7 +182,10 @@ local function OnBeginDrag(self, Pointgo, data)
|
||||||
self.moveTween.enabled = true
|
self.moveTween.enabled = true
|
||||||
self.moveTween.Momentum = Vector3.zero
|
self.moveTween.Momentum = Vector3.zero
|
||||||
self.moveTween.IsUseCallBack = false
|
self.moveTween.IsUseCallBack = false
|
||||||
|
self.isReachMax = 0
|
||||||
data:Use()
|
data:Use()
|
||||||
|
self.moveTween.Strength = 1
|
||||||
|
self.realPos = self.dragGOTran.anchoredPosition
|
||||||
end
|
end
|
||||||
|
|
||||||
local function OnDrag(self, Pointgo, data)
|
local function OnDrag(self, Pointgo, data)
|
||||||
|
@ -150,6 +203,8 @@ local function OnEndDrag(self, Pointgo, data)
|
||||||
self.moveTween.IsUseCallBack = true
|
self.moveTween.IsUseCallBack = true
|
||||||
data:Use()
|
data:Use()
|
||||||
self.isBeginDrag = false
|
self.isBeginDrag = false
|
||||||
|
self.isReachMax = 0
|
||||||
|
self.moveTween.Strength = 1
|
||||||
end
|
end
|
||||||
|
|
||||||
local function OnMoveEnd(self)
|
local function OnMoveEnd(self)
|
||||||
|
|
Loading…
Reference in New Issue