带有模糊图层的Google地图

时间:2014-06-19 22:11:00

标签: android google-maps

我正在开始一个新的Android应用程序,我将使用谷歌地图,我也是设计师并寻找灵感我找到了这个截图: http://cdn1.appleinsider.com/Maps.071213.2.jpg
我非常喜欢左侧屏幕,特别是图像底部的模糊图层(带有信息图标的图层)。

我正在读一些关于如何用android模糊但是所有人都在使用图片,Bitmap,ImageView没有地图。所以我的问题是:
我可以在Android上制作类似的东西(对iOS屏幕截图)吗?如何? 谢谢。

1 个答案:

答案 0 :(得分:3)

如果其他人遇到此问题,您必须使用Blurry library

但是由于MapView是一个表面视图,它无法与谷歌地图一起使用,所以你必须将MapView的图像捕捉到ImageView然后调用模糊,就像这样:

mGoogleMap.snapshot(new GoogleMap.SnapshotReadyCallback() {
                @Override
                public void onSnapshotReady(Bitmap bitmap) {
                    blurView.setVisibility(View.VISIBLE);
                    blurView.setImageBitmap(bitmap);

                    Blurry.with(getContext())
                            .radius(15)
                            .sampling(2)
                            .onto(mRootLayout);

                    mAddressBarLayout.expand();

                }
            });

你可以想象,ImageView被放置在MapView上,但它最初是隐藏的:

<android.support.design.widget.CoordinatorLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:animateLayoutChanges="true"
        android:orientation="vertical">

            <com.google.android.gms.maps.MapView
                android:id="@+id/map_fragment_mv"
                android:layout_width="match_parent"
                android:layout_height="match_parent"/>

            <ImageView
                android:id="@+id/blur_view"
                android:visibility="visible"
                android:layout_width="match_parent"
                android:layout_height="match_parent"/>

        </android.support.design.widget.CoordinatorLayout>

希望这有助于某人。