Code Monkey home page Code Monkey logo

photodraweeview's Introduction

PhotoDraweeView

PhotoView For Fresco

Maven Central

PhotoDraweeView

Gradle

AndroidX
dependencies {
    implementation 'com.facebook.fresco:fresco:x.x.x' // (latest)
    implementation 'me.relex:photodraweeview:2.1.0'
}
Android Support Library
dependencies {
    implementation 'com.facebook.fresco:fresco:x.x.x' // (latest)
    implementation 'me.relex:photodraweeview:1.1.3'
}

Usage

mPhotoDraweeView.setPhotoUri(Uri.parse("http://your.image.url"));
Using the ControllerBuilder
PipelineDraweeControllerBuilder controller = Fresco.newDraweeControllerBuilder();
controller.setUri(URI);
controller.setOldController(mPhotoDraweeView.getController());
controller.setControllerListener(new BaseControllerListener<ImageInfo>() {
    @Override
    public void onFinalImageSet(String id, ImageInfo imageInfo, Animatable animatable) {
        super.onFinalImageSet(id, imageInfo, animatable);
        if (imageInfo == null || mPhotoDraweeView == null) {
            return;
        }
        mPhotoDraweeView.update(imageInfo.getWidth(), imageInfo.getHeight());
    }
});
mPhotoDraweeView.setController(controller.build());

photodraweeview's People

Contributors

huulivoide avatar ongakuer avatar puredark avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

photodraweeview's Issues

PhotoDraweeView 在ViewPage内多次缩小手势会奔溃

java.lang.IllegalArgumentException: pointerIndex out of range pointerIndex=-1 pointerCount=1
at android.view.MotionEvent.nativeGetAxisValue(Native Method)
at android.view.MotionEvent.getX(MotionEvent.java:2072)
at android.support.v4.view.ViewPager.onInterceptTouchEvent(ViewPager.java:2064)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2108)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2555)
有什么解决方法吗

PhotoDraweeView高度不能控制

PhotoDraweeView不支持设置固定高度值吗?设置后缩放不能填满屏幕(项目中遇到图片高度保持一致)

holder.photoDraweeView.setPhotoUri(uri, mContext); 没有回调图片问题

作者,我需要你这个方法 holder.photoDraweeView.setPhotoUri(uri, mContext); 回调一个 加载成功后的图片资源,我如果我继承你的PhotoDraweeView类,但是 你那个方法里我无法改变你的 private boolean mEnableDraweeMatrix = true; 这个参数,因为它是私有的,如果我直接复制一遍的话,有一个错误就是
@OverRide protected void onDetachedFromWindow() {
mAttacher.onDetachedFromWindow();
super.onDetachedFromWindow();
}这个方法里的 mAttacher.onDetachedFromWindow(); 这个方法是被保护的,不允许我去调用,求解。

Released Under What License?

Hey there,

I like this library and would like to use it. What license is it released under?
Would you please add something making the license explicit?
Thanks,
Milk Run

long images are muzzy when zoom

I have set the setDownsampleEnabled(true) option, but didn't set the resizeOption when I use the PhotoDraweeView to load images.But some images are still resized which leads to the images are muzzy when I zoom to enlarge them.

holder.photoDraweeView.setOnViewTapListener(this);拦截了子控件监听问题

这个监听时间是否优先级太高了,里面有没有设置getParent().requestDisallowInterceptTouchEvent(true) 类似这个的方法,我感觉你这个监听时间不是PhotoDraweeView的监听事件,而是整个屏幕的事件,结果把PhotoDraweeView隐藏掉,给另外一个VIEW写一个ONCLICK监听事件,结果每次都执行holder.photoDraweeView.setOnViewTapListener(this)监听,被拦截了

App crash when zoom out to minimum level

Thanks for really nice work. But i am getting one issue. When we zoom out image from original level, then it get crashed. It works good with Zoom-In. Can you please suggest me?

作者这个缩放还原功能吗,暴露出的一个方法

作者我这边有个这样的使用场景,一个VIEWPAGER,里面有俩个VIEW,VIEW1切转VIEW2,现在是情景是,进入VIEW1的时候我把VIEW1里面的图片手动拉大,之后切转VIEW2,之后再切回VIEW1,当再次看到这个VIEW1的时候,需要把这个之前拉大的图片还原回原来大小(这个需要提前,再切回之前)

默认图片

加载网络图片,在为下载成功时,想显示一张默认图片,不知怎么显示

将图片一直缩小的话会出异常

Process: com.example.daidaijie.syllabusapplication, PID: 10619
java.lang.IllegalArgumentException: pointerIndex out of range
at android.view.MotionEvent.nativeGetAxisValue(Native Method)
at android.view.MotionEvent.getX(MotionEvent.java:1983)
at android.support.v4.view.MotionEventCompatEclair.getX(MotionEventCompatEclair.java:32)
at android.support.v4.view.MotionEventCompat$EclairMotionEventVersionImpl.getX(MotionEventCompat.java:110)
at android.support.v4.view.MotionEventCompat.getX(MotionEventCompat.java:462)
at android.support.v4.view.ViewPager.onInterceptTouchEvent(ViewPager.java:1992)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2095)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2546)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2239)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2546)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2239)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2546)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2239)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2546)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2239)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2546)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2239)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2546)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2239)
at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2398)
at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1739)
at android.app.Activity.dispatchTouchEvent(Activity.java:2783)
at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:60)
at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:60)
at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2359)
at android.view.View.dispatchPointerEvent(View.java:8698)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4525)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4383)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3919)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3972)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3938)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4048)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3946)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4105)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3919)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3972)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3938)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3946)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3919)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:6340)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:6296)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:6249)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:6502)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:148)
at android.os.Looper.loop(Looper.java:151)
at android.app.ActivityThread.main(ActivityThread.java:5546)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:964)

setAllowParentInterceptOnEdge不支持上下边缘?

我不是在ViewPager中而是在RecyclerView中用到了这个控件,因为想支持从上到下滚动浏览图片,但是放大以后没有办法上下滚动RecyclerView,即使抵达了上下边缘,但是发现如果达到左右边缘,则可以正常滚动RecyclerView
看了一下源码,似乎是onDrag里跟mAllowParentInterceptOnEdge相关的那部分判断只判断了EDGE_LEFT和EDGE_RIGHT
希望能支持上下边缘

无缩放效果,使用最新的fresco0.13.0和MultiTouchViewPager

如题,已经使用MultiTouchViewPager来解决跳出问题,然而最大的问题是即使调用了setController之后能显示图片,却完全没有缩放的功能……很谜……

Update:
没事了,我没注意到使用Controller和直接用DraweeView有一个区别,需要
PhotoDraweeView.update(imageInfo.getWidth(), imageInfo.getHeight());

This component doesn't save from such kind of exception

E/ViewDragHelper: Ignoring pointerId=1 because ACTION_DOWN was not received for this pointer before ACTION_MOVE. It likely happened because ViewDragHelper did not receive all the events in the event stream.

Process: com.messme, PID: 3554
java.lang.ArrayIndexOutOfBoundsException: length=1; index=1
at android.support.v4.widget.ViewDragHelper.saveLastMotion(ViewDragHelper.java:849)
at android.support.v4.widget.ViewDragHelper.shouldInterceptTouchEvent(ViewDragHelper.java:1057)
at android.support.v4.widget.DrawerLayout.onInterceptTouchEvent(DrawerLayout.java:1434)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java)

and so on.
Phone Samsung Galasy S4 I9500, OS Android 5.1.1

提个优化建议,实现自定义缩放级别

目前缩放分三级,min,mid,max,但是这样很不灵活,昨天我为了实现只有两级缩放,几乎把 Attacher, OnDoubleTapListener, HKPhotoDraweeView 都实现了一遍
但其实要实现改动还是蛮小的,只需要将 min, mid, max 模型修改为 min, step, max 模型即可,用户就可以自定义任意级别的缩放了
如果你觉得可行的话,我来修改提交 PR

在ViewPager中滑动挺困难的

滑动的时候如果不是很接近水平滑动,viewpager就滑不动,特别是y轴方向偏上的时候。找了一下,没看到在哪里修改。

Library on maven central

Hey!

Any reason this is not on Maven central? Importing and maintaining a library not in a central repository is a pain in the ass.
Since this library is linked from the README of PhotoView, I'm sure a lot of people would find this easier to use too. 🙂

Anyway thanks for the project!

Crash

1 android.view.MotionEvent.nativeGetAxisValue(Native Method)
2 android.view.MotionEvent.getX(MotionEvent.java:1979)
3 android.support.v4.view.ViewPager.onInterceptTouchEvent(ViewPager.java:2064)
4 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1859)
5 android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2218)
6 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
7 android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2218)
8 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
9 android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2218)
10 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
11 android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2218)
12 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
13 android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2218)
14 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
15 android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2218)
16 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1959)
17 com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2101)
18 com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1548)
19 android.app.Activity.dispatchTouchEvent(Activity.java:2510)
20 android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:63)
21 com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2049)
22 android.view.View.dispatchPointerEvent(View.java:7914)
23 android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4280)
24 android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4159)
25 android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3657)
26 android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3707)
27 android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3676)
28 android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3783)
29 android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3684)
30 android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3840)
31 android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3657)
32 android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3707)
33 android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3676)
34 android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3684)
35 android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3657)
36 android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5865)
37 android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5845)
38 android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5816)
39 android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:5956)
40 android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
41 android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method)
42 android.view.InputEventReceiver.consumeBatchedInputEvents(InputEventReceiver.java:176)
43 android.view.ViewRootImpl.doConsumeBatchedInput(ViewRootImpl.java:5918)
44 android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run(ViewRootImpl.java:5979)
45 android.view.Choreographer$CallbackRecord.run(Choreographer.java:787)
46 android.view.Choreographer.doCallbacks(Choreographer.java:600)
47 android.view.Choreographer.doFrame(Choreographer.java:567)
48 android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:773)
49 android.os.Handler.handleCallback(Handler.java:733)
50 android.os.Handler.dispatchMessage(Handler.java:95)
51 android.os.Looper.loop(Looper.java:136)
52 android.app.ActivityThread.main(ActivityThread.java:5336)
53 java.lang.reflect.Method.invokeNative(Native Method)
54 java.lang.reflect.Method.invoke(Method.java:515)
55 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:871)
56 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687)
57 dalvik.system.NativeStart.main(Native Method)

placeholderImage location error

i want to set placeholderImage when the image is loading,

photoDraweeView.getHierarchy().setPlaceholderImage(getResources().getDrawable(R.drawable.default_img), ScalingUtils.ScaleType.CENTER);R.drawable.default_img

but when i scroll the view a few times , the holderImage location is error;

like this:
device-2016-06-15-171412
device-2016-06-15-171431

缩小到最小会崩溃

11-13 15:27:22.817 17643-17643/me.umeitimes.act.www E/MotionEvent-JNI: validatePointerIndex pointerIndex:-1, pointerCount:1
11-13 15:27:22.818 17643-17643/me.umeitimes.act.www E/InputEventReceiver: Exception dispatching input event.
11-13 15:27:22.901 17643-17713/me.umeitimes.act.www E/MPlugin: Unsupported class: com.mediatek.common.telephony.IOnlyOwnerSimSupport
11-13 15:27:22.946 17643-17643/me.umeitimes.act.www E/AndroidRuntime: FATAL EXCEPTION: main
Process: me.umeitimes.act.www, PID: 17643
java.lang.IllegalArgumentException: pointerIndex out of range
at android.view.MotionEvent.nativeGetAxisValue(Native Method)
at android.view.MotionEvent.getX(MotionEvent.java:2014)
at android.support.v4.view.ViewPager.onInterceptTouchEvent(ViewPager.java:2096)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2000)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2523)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2175)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2523)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2175)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2523)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2175)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2523)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2175)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2523)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2175)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2523)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2175)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2523)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2175)
at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2539)
at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1807)
at android.app.Activity.dispatchTouchEvent(Activity.java:2823)
at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:67)
at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2496)
at android.view.View.dispatchPointerEvent(View.java:8874)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4774)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4606)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4082)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4135)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4101)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4238)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4109)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4295)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4082)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4135)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4101)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4109)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4082)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:6593)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:6567)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:6520)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:6773)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
at android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method)
at android.view.InputEventReceiver.consumeBatchedInputEvents(InputEventReceiver.java:176)
at android.view.ViewRootImpl.doConsumeBatchedInput(ViewRootImpl.java:6711)
at android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run(ViewRootImpl.java:6799)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:800)
at android.view.Choreographer.doCallbacks(Choreographer.java:603)
at android.view.Choreographer.doFrame(Choreographer.java:570)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:786)
at android.os.Handler.handleCallback(Handler.java:815)
at android.os.Handler.dispatchMessage(Hand

放大缩小崩溃问题

在频繁放大缩小图片时会出现奔溃,特别是刚开始加载图片时(已经修改过了viewpager)

02-04 11:43:22.680 5070-5070/? E/ViewDragHelper: Ignoring pointerId=1 because ACTION_DOWN was not received for this pointer before ACTION_MOVE. It likely happened because ViewDragHelper did not receive all the events in the event stream.
02-04 11:43:22.680 5070-5070/? E/InputEventReceiver: Exception dispatching input event.
02-04 11:43:23.000 5070-5070/? E/Tinker.SampleUncaughtExHandler: uncaughtException:length=1; index=1
02-04 11:43:23.000 5070-5070/? E/Tinker.UncaughtHandler: catch exception when loading tinker:java.lang.ArrayIndexOutOfBoundsException: length=1; index=1
at android.support.v4.widget.ViewDragHelper.saveLastMotion(ViewDragHelper.java:849)
at android.support.v4.widget.ViewDragHelper.shouldInterceptTouchEvent(ViewDragHelper.java:1057)
at android.support.v4.widget.DrawerLayout.onInterceptTouchEvent(DrawerLayout.java:1434)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2366)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2839)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2514)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2839)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2514)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2839)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2514)
at com.android.internal.policy.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2831)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1863)
at android.app.Activity.dispatchTouchEvent(Activity.java:3046)
at com.android.internal.policy.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2792)
at android.view.View.dispatchPointerEvent(View.java:10228)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5350)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5186)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4626)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4679)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4645)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4787)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4653)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4844)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4626)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4679)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4645)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4653)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4626)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7323)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7201)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7162)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7433)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
at android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method)
at android.view.InputEventReceiver.consumeBatchedInputEvents(InputEventReceiver.java:176)
at android.view.ViewRootImpl.doConsumeBatchedInput(ViewRootImpl.java:7397)
at android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run(ViewRootImpl.java:7460)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:920)
at android.view.Choreographer.doCallbacks(Choreographer.java:695)
at android.view.Choreographer.doFrame(Choreographer.java:625)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:906)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:158)
at android.app.ActivityThread.main(ActivityThread.java:7233)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

非module导入使用问题

app:failureImage="@drawable/ic_error"
app:failureImageScaleType="centerInside"
app:placeholderImage="@drawable/ic_placeholder"
app:placeholderImageScaleType="fitCenter"
app:progressBarAutoRotateInterval="1000"
app:progressBarImage="@drawable/ic_loading"
app:progressBarImageScaleType="centerInside"

这里的app改成什么指定定义的属性?小白求指点啊

Initial Zooming Problem on first viewpager Fragment

There seems to be difficulty zooming on the first fragment of 20 for a viewpager using fresco. Almost seems to be disabled until you reload the page when you scroll out of the page limit and back to the first picture. Implemented the same way as the example and zoom works on all the other pages. Any suggestions?

Project publishing

Hi, thanks for library it seems to be great solution for Fresco users.
But there is no way to include it as dependency only import as module and reference it in gradle file.
Please deploy library somewhere.

加载中的进度条也被放大了,有解决方法吗

我设置了进度条:
GenericDraweeHierarchy hierarchy = new GenericDraweeHierarchyBuilder(mContext.getResources()) .setActualImageScaleType(ScalingUtils.ScaleType.FIT_CENTER) .setProgressBarImage(new CustomProgressBar(mContext)) .build();
结果发现显示进度条过程中,也可以放大,有没有办法禁止加载过程中被放大呢!

哥们狂报这个 异常!!!

10-18 10:46:02.051 25780-25780/com.android.lft E/InputEventReceiver: Exception dispatching input event.
10-18 10:46:02.053 25780-25780/com.android.lft E/MessageQueue-JNI: Exception in MessageQueue callback: handleReceiveCallback
10-18 10:46:02.058 25780-25780/com.android.lft E/MessageQueue-JNI: java.lang.IllegalArgumentException: pointerIndex out of range
at android.view.MotionEvent.nativeGetAxisValue(Native Method)
at android.view.MotionEvent.getX(MotionEvent.java:2089)
at android.support.v4.view.MotionEventCompatEclair.getX(MotionEventCompatEclair.java:32)
at android.support.v4.view.MotionEventCompat$EclairMotionEventVersionImpl.getX(MotionEventCompat.java:110)
at android.support.v4.view.MotionEventCompat.getX(MotionEventCompat.java:462)
at android.support.v4.view.ViewPager.onInterceptTouchEvent(ViewPager.java:1987)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2109)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2554)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2255)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2554)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2255)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2554)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2255)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2554)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2255)
at com.android.internal.policy.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2403)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1737)
at android.app.Activity.dispatchTouchEvent(Activity.java:2820)
at com.android.internal.policy.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2364)
at android.view.View.dispatchPointerEvent(View.java:9526)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4262)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4128)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3669)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3722)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3688)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3814)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3696)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3871)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3669)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3722)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3688)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3696)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3669)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5954)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5928)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5889)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:6057)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:323)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5438)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:629)
10-18 10:46:02.069 25780-25780/com.android.lft E/Throwable: java.lang.IllegalArgumentException: pointerIndex out of range

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.