如何使用Glide设置CollapsingToolbarLayout背景?

时间:2018-12-08 07:08:52

标签: android android-glide android-collapsingtoolbarlayout

    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/sol_detail_collapsing_toolbar"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true"
        android:background="@drawable/ic_launcher_background"
        app:contentScrim="?attr/colorPrimary"
        app:layout_scrollFlags="scroll|exitUntilCollapsed"
        app:toolbarId="@+id/toolbar">

这是我的CollapsingToolbarLayout XML。我想通过Glide的链接设置背景 Glide.with(this).load(imageLink).into(someThingToChangeTheBackground);

2 个答案:

答案 0 :(得分:0)

如果我理解您的问题,最简单的方法是在CollapsingToolbarLayout布局中添加imageView,例如:

<android.support.design.widget.CollapsingToolbarLayout
                android:id="@+id/collapsing_toolbar"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:fitsSystemWindows="true"
                app:expandedTitleMarginEnd="64dp"
                app:expandedTitleMarginStart="48dp"
                app:layout_scrollFlags="scroll|exitUntilCollapsed">

                <ImageView
                    android:id="@+id/iv_your_image"
                    android:layout_width="match_parent"
                    android:layout_height="280dp"
                    android:layout_marginTop="12dp"
                    android:paddingTop="48dp"
                    android:paddingBottom="48dp"
                    app:layout_collapseMode="none"
                    app:layout_constraintTop_toTopOf="parent"
                    />

                <android.support.v7.widget.Toolbar
                    android:id="@+id/toolbar_fragment"
                    android:layout_width="match_parent"
                    android:layout_height="?attr/actionBarSize"
                    android:adjustViewBounds="true"
                    android:background="@drawable/bg_main"
                    android:scaleType="centerCrop"
                    app:layout_collapseMode="pin"
                    app:popupTheme="@style/ThemeOverlay.AppCompat.Light">

                </android.support.v7.widget.Toolbar>

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

然后,Glide.with(this).load(imageLink).into(iv_your_image)

答案 1 :(得分:0)

您可以使用自定义目标。

int myWidth = 512;
int myHeight = 384;

Glide.with(yourApplicationContext))
    .load(youUrl)
    .asBitmap()
    .into(new SimpleTarget<Bitmap>(myWidth, myHeight) {
        @Override
        public void onResourceReady(Bitmap bitmap, GlideAnimation anim) {
            // Do something with bitmap here.
        }
    };

https://github.com/bumptech/glide/wiki/Custom-targets