1.设置几个anim做滑动时候的动画
left_in.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="1000"
android:fromXDelta="-100%p"
android:toXDelta="0"/>
</set>
?left_out.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="1000"
android:fromXDelta="0"
android:toXDelta="100%p"/>
</set>
?right_in.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="1000"
android:fromXDelta="100%p"
android:toXDelta="0"/>
</set>
right_out.xml?
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="1000"
android:fromXDelta="0"
android:toXDelta="-100%p"/>
</set>
2.布局 :代码为从右往左滑动切换(只用到了right的anim的xml资源)
?
<ViewFlipper
android:id="@+id/viewFlipper"
android:layout_width="485px"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:inAnimation="@anim/right_in"
android:outAnimation="@anim/right_out"
android:flipInterval="3000"/>
3.使用:
1.资源 private val resId = intArrayOf(R.drawable.a, R.drawable.c)
2.在onCreate()里面初始化
fun init(){
for (i in resId.indices) {
//在往viewFlipper中加入imageView
val img = ImageView(this)
img.setImageResource(resId[i])
viewFlipper.addView(img)
}
//开始自动滚动
viewFlipper.startFlipping()
}
3.在onDestroy()里面停止
override fun onDestroy() {
super.onDestroy()
viewFlipper.stopFlipping()
}
?
?如果要从左往右就使用left_out与left_in的资源
?
|