ViewFlipper
<ViewFlipper
android:id="@+id/vf"
android:layout_width="0dp"
android:layout_height="36dp"
android:autoStart="true"
android:background="@color/colorWhite"
android:flipInterval="3000"
android:inAnimation="@anim/anim_marquee_in"
android:outAnimation="@anim/anim_marquee_out"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintLeft_toRightOf="@+id/img_notice"
app:layout_constraintRight_toLeftOf="@+id/txt_order"
android:layout_marginRight="10dp"
android:layout_marginLeft="10dp"
android:paddingLeft="5dp" />
anim_marquee_in
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="1500"
android:fromYDelta="100%p"
android:toYDelta="0"/>
</set>
anim_marquee_out
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="1500"
android:fromYDelta="0"
android:toYDelta="-100%p"/>
</set>
初始化使用
vf =findViewById(R.id.vf);
void initVf() {
vf.removeAllViews();
for (int i=0 ;i<10;i++) {
View view = mInflater.inflate(R.layout.flipper_ad, null);
vf.addView(view);
}
} ```