有没有办法将多个转换组合成一个可应用于视图寻呼机的自定义转换?
例如,我有这个视图分页器布局,有两个图像视图。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayoutLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/background"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<ImageView
android:id="@+id/image"
android:layout_width="150dp"
android:layout_height="150dp"/>
</RelativeLayoutLayout>
我希望第一个图像视图根据此转换进行转换
public class FadePageTransformer implements ViewPager.PageTransformer {
public void transformPage(View view, float position) {
view.setTranslationX(view.getWidth() * -position);
if(position <= -1.0F || position >= 1.0F) {
view.setAlpha(0.0F);
} else if( position == 0.0F ) {
view.setAlpha(1.0F);
} else {
// position is between -1.0F & 0.0F OR 0.0F & 1.0F
view.setAlpha(1.0F - Math.abs(position));
}
}
}
我希望第二个视图根据其他一些自定义转换进行转换
public class CustomTranform implements ViewPager.PageTransformer {
public void transformPage(View view, float position) {
//Some code
}
}
答案 0 :(得分:0)
这种方法对我很有用。我刚刚将两个寻呼机同步。
viewPager.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
viewPager2.onTouchEvent(event);
return false;
}
});
viewPager2.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
viewPager.onTouchEvent(event);
return false;
}
});
积分here。