Android viewpager使用当前页面重叠下一页和上一页的ImageView

时间:2014-08-08 16:39:14

标签: android android-viewpager android-animation android-adapter

我要做的是,使用viewpager创建一个相册,当用户滑到下一个/上一个时,当前图像的不透明度(Alpha)会降低,而下一个/上一个的不透明度会增加滑动的进展。关键在于给人的印象是所有图像都是堆叠的,并且它们只是从当前图像下方淡出。但是,图像的标题从左侧或右侧显示为普通的viewpager。有任何想法吗 ? 我的页面片段布局。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center" >

<ImageView
    android:id="@+id/slider_image"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:scaleType="centerCrop"
     /> <!-- #FFF #000 -->

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/slider_title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:layout_marginBottom="5dp"
        android:layout_marginTop="-80dp"
        android:text="All-in-one"
        android:textColor="#FFF"
        android:textSize="32sp" />

    <TextView
        android:id="@+id/slider_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:gravity="center_horizontal"
        android:paddingLeft="30dp"
        android:paddingRight="30dp"
        android:text="image desc"
        android:textColor="#FFF"
        android:textSize="14sp" />
</LinearLayout>

1 个答案:

答案 0 :(得分:0)

您需要实现类似于此处示例的PageTransformer:http://developer.android.com/training/animation/screen-slide.html#depth-page

您需要执行的额外步骤是,当您使用pageTransform()方法获取视图时,需要获取要设置动画的视图 - 在您的情况下使用ImageView(使用view.findViewById(R.id.slider_image))并更改阿尔法值。