private void syncScrollBar(bool end = false)
{
if (end) //滚动结束
{
if (_vtScrollBar != null)
{
if (_scrollBarDisplayAuto)
ShowScrollBar(false);
}
if (_hzScrollBar != null)
{
if (_scrollBarDisplayAuto)
ShowScrollBar(false);
}
UpdateClipSoft();
}
else
{
//这里不能直接使用_xPerc或者_yPerc,因为滚动可能处于过渡状态
if (_vtScrollBar != null)
{
_vtScrollBar.scrollPerc = _yOverlap == 0 ? 0 : Mathf.Clamp(-_container.y, 0, _yOverlap) / _yOverlap;
if (_scrollBarDisplayAuto)
ShowScrollBar(true);
}
if (_hzScrollBar != null)
{
_hzScrollBar.scrollPerc = _xOverlap == 0 ? 0 : Mathf.Clamp(-_container.x, 0, _xOverlap) / _xOverlap;
if (_scrollBarDisplayAuto)
ShowScrollBar(true);
}
UpdateClipSoft();
}
}