CircularImageView icon indicating copy to clipboard operation
CircularImageView copied to clipboard

NullPointerException with Picasso when there is no placeholder.

Open ZxoR opened this issue 10 years ago • 10 comments

The lines of code:

            final CircularImageView circularImageView = (CircularImageView) holder.mRootView.findViewById(R.id.circularImageView);

                Picasso.with(holder.mRootView.getContext()).load(new File(trackingNumbers.get(position).getImageUrl())).error(R.drawable.no_image_place_holder).noFade().into(circularImageView);

The exception:

11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.Bitmap.getWidth()' on a null object reference
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.graphics.Bitmap.createScaledBitmap(Bitmap.java:596)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at com.pkmmte.view.CircularImageView.refreshBitmapShader(CircularImageView.java:341)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at com.pkmmte.view.CircularImageView.invalidate(CircularImageView.java:262)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.widget.ImageView.setImageDrawable(ImageView.java:456)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at com.squareup.picasso.PicassoDrawable.setPlaceholder(PicassoDrawable.java:61)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at com.squareup.picasso.RequestCreator.into(RequestCreator.java:664)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at com.squareup.picasso.RequestCreator.into(RequestCreator.java:601)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at kael.trackninja.Adapters.TrackingRecyclerViewAdapter.onBindViewHolder(TrackingRecyclerViewAdapter.java:83)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at kael.trackninja.Adapters.TrackingRecyclerViewAdapter.onBindViewHolder(TrackingRecyclerViewAdapter.java:30)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:5212)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:5245)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4483)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4359)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:1961)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1370)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1333)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:562)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.RecyclerView.dispatchLayout(RecyclerView.java:2900)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.RecyclerView.consumePendingUpdateOperations(RecyclerView.java:1435)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.RecyclerView.access$400(RecyclerView.java:144)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.support.v7.widget.RecyclerView$1.run(RecyclerView.java:282)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.view.Choreographer.doCallbacks(Choreographer.java:580)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.view.Choreographer.doFrame(Choreographer.java:549)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.os.Handler.handleCallback(Handler.java:739)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:95)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:135)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5272)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:372)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:909)
11-07 16:16:46.246 29353-29353/kael.trackninja E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:704)

It happens only when using CircleImageView, when switching to regualr ImageView its not working.

EDIT: I found that when you adding "placeholder" to picasso its working fine:

                Picasso.with(holder.mRootView.getContext()).load(new File(trackingNumbers.get(position).getImageUrl())).error(R.drawable.no_image_place_holder).noFade().placeholder(R.drawable.no_image_place_holder).into(circularImageView);

ZxoR avatar Nov 07 '15 14:11 ZxoR

Same here, please fix this :)

ionull avatar Dec 03 '15 10:12 ionull

Please use the imageloader jar

deboLing avatar Dec 29 '15 11:12 deboLing

Same here , Any fix for this ?

rahulfhp avatar Jan 20 '16 15:01 rahulfhp

same here but I'm using Glide

rugved-in avatar Feb 24 '16 13:02 rugved-in

I just received the same NullPointerException. Please fix this

timkoers avatar Mar 02 '16 10:03 timkoers

Just received crash as well. Added a placeholder image as my view needs one anyway. Other cases I might not want a placeholder.

levibostian avatar Sep 25 '16 20:09 levibostian

Any fixes found?

anupamchugh avatar Feb 16 '17 07:02 anupamchugh

Give placeholder explicitly like Picasso.with(this).load(imageUrl).placeholder(R.drawable.placeHolder).into(mImg); Above line solved my problem... :)

snehaltembare avatar Apr 10 '18 09:04 snehaltembare

Give placeholder explicitly like Picasso.with(this).load(imageUrl).placeholder(R.drawable.placeHolder).into(mImg); Above line solved my problem... :)

Wow, that solved my problem too. Thank you so much.

jrcaz avatar Oct 03 '19 07:10 jrcaz

Udine and the rest are all good JDownloader

khyveasna avatar Nov 27 '19 01:11 khyveasna