Vitaliy Terziev
Vitaliy Terziev

Reputation: 6701

viewPager does not show Glide image

I have a problem with loading "Glide" image into "ImageView" with "viewPager".

When I try with "drawable" resource it works fine but for some reason (i guess because it is async) it does not wait for Glide to update the view. Nothing crashes just blank viewPager with 3 screens.

P.S Also, the "Firebase" setup is working fine.

I know that is very hard to replicate a problem with this many libs and stuff but if you can throw some suggestions in the comment section it would be great

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;

import com.bumptech.glide.Glide;
import com.firebase.ui.storage.images.FirebaseImageLoader;
import com.google.firebase.storage.FirebaseStorage;
import com.google.firebase.storage.StorageReference;

public class ScreenSlidePageFragment extends Fragment {
    public static final String ARG_OBJECT = "object";

    // Firebase Initial code.
    private FirebaseStorage storage = FirebaseStorage.getInstance();
    private StorageReference storageRef = storage.getReferenceFromUrl("gs://myfirebase_example");
    private StorageReference fileRef = storageRef.child("images/3.jpg");

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    ViewGroup rootView = (ViewGroup) inflater.inflate(
            R.layout.fragment_screen_slide_page, container, false);

    Bundle args = getArguments();

    //TODO: Find out how to load the images with Glide, now it is not waiting.
    ImageView imageView = (ImageView) rootView.findViewById(R.id.imageView);
    //setImageResource(args.getInt(ARG_OBJECT));

    // Getting one image from the DB, it is working perfectly.
    Glide.with(getActivity())
            .using(new FirebaseImageLoader())
            .load(fileRef)
            .into(imageView);

    return rootView;
}
}

Upvotes: 0

Views: 2320

Answers (1)

Vitaliy Terziev
Vitaliy Terziev

Reputation: 6701

The problem was missing default image for the ImageView fragment. All is working as expected at the moment.

    <ImageView
    android:id="@+id/imageView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:srcCompat="@android:drawable/screen_background_dark" />

Upvotes: 1

Related Questions