可折叠工具栏中的SimpleDraweeView不显示图像

时间:2016-02-12 09:06:37

标签: android android-collapsingtoolbarlayout image-loading android-appbarlayout fresco

嗨,我不知道为什么这不起作用也不确定这是否可行,但这是我想要做的。 我有一个SimpleDraweeView,它包含在collapsingtoolbarlayout中,我正在尝试将图像加载到其中。

 <android.support.design.widget.AppBarLayout
    android:id="@+id/app_bar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fitsSystemWindows="true">

    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/toolbar_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fitsSystemWindows="true"
        app:contentScrim="?attr/colorPrimary"
        app:titleEnabled="false"
        app:layout_scrollFlags="scroll|exitUntilCollapsed">

        <com.facebook.drawee.view.SimpleDraweeView
            android:id="@+id/cover_image"
            android:layout_width="match_parent"
            app:layout_collapseMode="parallax"
            android:layout_height="300dp"
            fresco:placeholderImageScaleType="centerCrop"
            android:fitsSystemWindows="true"/>
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="300dp"
            android:background="#55000000"/>
        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            app:layout_scrollFlags="scroll"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            app:layout_collapseMode="pin"
            app:popupTheme="@style/AppTheme.PopupOverlay"/>

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

我试图在我的onCreate方法中设置图像。

    //gallery is my object which contains coverImage field
    Uri coverImageUri = Uri.parse(gallery.getCoverImage());
    SimpleDraweeView coverImageView = (SimpleDraweeView)findViewById(R.id.gallery_cover_image);
    Toast.makeText(this,gallery.getCoverImage(),Toast.LENGTH_SHORT).show();
    coverImageView.setImageURI(coverImageUri);

我能够看到吐司中的网址,但图像似乎没有出现。任何指针都表示赞赏。谢谢。

1 个答案:

答案 0 :(得分:0)

我试用了你的代码,一切正常。您的xml没问题且您的java代码合理,所以我想您的问题很简单。我认为您忘记添加互联网权限,因为这是唯一没有为我显示图片的情况,只需在<uses-permission android:name="android.permission.INTERNET"/>中添加manifest.xml即可#&} 39;将被设定。

此外,我发现您有placeHolderScaleType而非占位符,因此如果您在线加载图片,最好添加一下。

感谢您拥有的View阴影,它实际上给了我一些我想要做的事情的暗示,并且正在考虑如何做到这一点。