ugui的弹出效果和控制scrollview的滚动

起因

用ugui的scrollview做了一个游戏内信息提醒列表。然后想在每次出现新信息时,自动弹出列表,并且内容滚到底端。

思考与工作

弹出弹回效果就是修改RectTransform的anchoredPosition。它是异步的动画,不想放update,不想用协程,可以用DoTween等动画插件的方法,例如DoTween的DOAnchorPosX。还有要保留初始值RectTransform的sizeDelta用于恢复原位。

至于scrollview滚动效果,我本来以为是修改scrollbar的值就可以,然而它不像web前端开发里一样,浏览器滚动条和内容高度双向绑定的?。然后在运行游戏时看了下滚动时有什么面板值发生了变化,发现是viewport的content的PosY在改变,而且滚动到底部时它的值等于HDelta。那么实现效果代码就是修改RectTransform的anchoredPosition等于RectTransform的rect.height。

你可能感兴趣的:(Unity,ugui)