Android生成倒影效果
来源:互联网 发布:威风堂堂动作数据口动 编辑:程序博客网 时间:2024/05/16 11:11
网上同类的例子很多,但给出的解释不多,而且没有通用性。
我在借鉴网友例子的基础上,给出了一个更具通用性的实现。
首先明确一些基本条件:
* 原图与倒影的宽度是一样的;
* 二者在垂直方向上可以有一点距离(1-2dp);
* 二者的高度一般是不一样的,且倒影高度应比较小;
* 二者在水平方向上的压缩比要相同,否则二者不对称;
* 倒影在垂直方向上是渐变的,即越向下越暗;
基于此,上下相邻2个ImageView的宽度要一致,且scaleType都应设为 fitXY 。
我们有如下的布局(原图高度:倒影高度 = 3:1):
android:id="@+id/screen0"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
android:id="@+id/image0"
android:src="@drawable/main_icon"
android:scaleType="fitXY"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="2dp"
android:layout_weight="1"
/>
android:id="@+id/image0_reflection"
android:src="@drawable/main_icon"
android:scaleType="fitXY"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="2dp"
我在借鉴网友例子的基础上,给出了一个更具通用性的实现。
首先明确一些基本条件:
* 二者的高度一般是不一样的,且倒影高度应比较小;
基于此,上下相邻2个ImageView的宽度要一致,且scaleType都应设为 fitXY 。
我们有如下的布局(原图高度:倒影高度 = 3:1):