我有一个具有背景的 FrameLayout,并且包含一个可以在视图中滑动的 ViewPager。我还有一个 PNG 图像,我想将它用作 ViewPager 上的蒙版,这样我就可以保留我的背景,但只显示 ViewPager 元素的一部分。本质上,我想创建一个自定义遮罩效果,如此处所示,但我不想将其应用于图像,而是将其应用于视图。我怎样才能做到这一点?
我开始:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:padding="4dip"
android:gravity="center_horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<ImageView
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:scaleType="fitXY"
android:src="@drawable/mask"/>
</FrameLayout>
我使用的图像基本上在 PNG 文件中有一个切口,所以有一个透明部分。使用这种技术的问题是图像的一部分具有渐变。通过做一个适当的面具,我希望角色会“淡入”,但相反,它现在只是明显地出现,因为你可以看到它出现的边缘,所以它并不漂亮。如果有人有更好的想法如何干净地掩盖它,我对他们持开放态度......