我正在开发简单的图库应用程序。有水平视图的缩略图。通过单击缩略图,将打开一个新活动。 这是它的布局:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/expanded_image_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<ImageView
android:id="@+id/expanded_image"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:layout_marginTop="20dip"
android:layout_marginBottom="20dip"
/>
</FrameLayout>
因此,ImageView的目的是按比例拉伸所选图像以适应整个屏幕。
我的问题是,是否有办法为图像绘制阴影(不适用于ImageView - 我可以使用android:background =&#34; @android:drawable / dialog_holo_light_frame&#34;,但ImageView匹配父容器)? 图像是通过动态设置(通过setImageResource)。它们有不同的尺寸。
提前感谢您的帮助!
答案 0 :(得分:0)
对于你想要的效果,你需要解决两个问题:
对于1.使用ImageView和:
setImageResource()
对于2.您可以使用:
关于第二点,请参阅此video。
编辑:这个答案补充了我对原始答案的评论。请参阅linked image。
答案 1 :(得分:0)
影像阴影是两种类型 1正常阴影。 2投影..
对于这两种情况,你有两个解决方案 阴影的1次使用9补丁图像将其设置为该图像的背景。 2使用渐变背景图像...
答案 2 :(得分:0)
只是为了澄清:从一开始我就使用了9-patch图像方法(事实上标准的android图像dialog_holo_light_frame被设置为背景)。但是我面临以下问题:ImageView是通过layout_width =&#34; match_parent&#34;来拉伸的。和android:layout_height =&#34; match_parent&#34; (按比例拉伸显示的图像),因此阴影从容器中掉落,而不是从图像本身掉落。
通过设置android:adjustViewBounds =&#34; true&#34;解决了这个问题。对于ImageView,然后通过dinamically更改ImageView:
机器人:layout_width =&#34; WRAP_CONTENT&#34;
机器人:layout_height =&#34; match_parent&#34;
机器人:layout_width =&#34; match_parent&#34;
机器人:layout_height =&#34; WRAP_CONTENT&#34;