如何使用 Nativescript-Vue 分配元素以制作动画?
Posted
技术标签:
【中文标题】如何使用 Nativescript-Vue 分配元素以制作动画?【英文标题】:How do you assign an element to animate with Nativescript-Vue? 【发布时间】:2019-01-20 23:50:27 【问题描述】:查看此文档:
https://docs.nativescript.org/ui/animation
我正在尝试将此元素的类或 ID 添加为 <Label>
以动画化任何内容,但我不确定应该使用 view
分配元素以通过调用动画来完全控制任何动画方法直接用代码代替 Vue 模板中的 CSS 动画。
【问题讨论】:
【参考方案1】:Tiago Alves 的 Groceries 示例应用中有一个很好的例子。我这里借用了他的一些代码,你可以这样动画:
给你的元素一个ref
:
<AbsoluteLayout marginTop="-340" ref="logoContainer" class="logo-container">
<Image translateY="0" src="res://seal" stretch="none"/>
</AbsoluteLayout>
然后使用标准的 NativeScript Animation API 抓取该 ref 并为其设置动画:
this.$refs.logoContainer.nativeView
.animate(
translate: x: 0, y: platformModule.isandroid ? -70 : -50 ,
duration: 500,
curve: enums.AnimationCurve.easeIn )
.then(() =>
this.state = 'main'
)
【讨论】:
您的原始代码给了我一些错误,但我设法编辑了一些未定义的对象并且它有效。将platformModule.isAndroid
替换为-50 之类的数字,就像y: -50
和注释curve: enums.AnimationCurve.easeIn
似乎enums
也未定义,还要注释this.state = "main"
,因为此回调是可选的。以上是关于如何使用 Nativescript-Vue 分配元素以制作动画?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 NativeScript-vue 中的 BarcodeScanner 插件
点击按钮后如何将ListView向下滚动到底部(例如使用scrollToIndex)? NativeScript-Vue
NativeScript-Vue:如何安装 BottomNavigation 组件
Nativescript-Vue:如何在 ListView 中正确使用 v-for