Microsoft Windows Phone 8.1 support ends (13 Jul 2017)

Microsoft has ended support for Windows Phone 8.1

Questions about Android development and PDF

handle zoomlevel in landscap mode

More
IP: 192.168.0.71 11 years 3 months ago #8085 by asliyanage
I tried with zoomlevel =8.its working for portrait.But when i use landscape mode it gives me blank screen when i try to zooming continuously. sometime i am getting below exception

12-11 09:38:39.413: E/AndroidRuntime(23134): FATAL EXCEPTION: main
12-11 09:38:39.413: E/AndroidRuntime(23134): Process: com.example.wtest, PID: 23134
12-11 09:38:39.413: E/AndroidRuntime(23134): java.lang.IllegalArgumentException: pointerIndex out of range
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.MotionEvent.nativeGetAxisValue(Native Method)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.MotionEvent.getX(MotionEvent.java:2225)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.support.v4.view.MotionEventCompatEclair.getX(MotionEventCompatEclair.java:32)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.support.v4.view.MotionEventCompat$EclairMotionEventVersionImpl.getX(MotionEventCompat.java:91)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.support.v4.view.MotionEventCompat.getX(MotionEventCompat.java:219)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.support.v4.view.ViewPager.onInterceptTouchEvent(ViewPager.java:1839)
12-11 09:38:39.413: E/AndroidRuntime(23134): at com.sph.custom.ViewPagerWithTapGestreDetection.onInterceptTouchEvent(ViewPagerWithTapGestreDetection.java:126)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2107)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2477)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2209)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2477)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2209)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2477)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2209)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2477)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2209)
12-11 09:38:39.413: E/AndroidRuntime(23134): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2332)
12-11 09:38:39.413: E/AndroidRuntime(23134): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1616)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.app.Activity.dispatchTouchEvent(Activity.java:2665)
12-11 09:38:39.413: E/AndroidRuntime(23134): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2280)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.View.dispatchPointerEvent(View.java:8489)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4890)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4741)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4295)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4349)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4318)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4429)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4326)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4486)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4295)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4349)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4318)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4326)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4295)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:6705)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:6584)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:6555)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:6520)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:6785)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.InputEventReceiver.consumeBatchedInputEvents(InputEventReceiver.java:176)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl.doConsumeBatchedInput(ViewRootImpl.java:6758)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run(ViewRootImpl.java:6804)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.Choreographer$CallbackRecord.run(Choreographer.java:813)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.Choreographer.doCallbacks(Choreographer.java:613)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.Choreographer.doFrame(Choreographer.java:581)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:799)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.os.Handler.handleCallback(Handler.java:733)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.os.Handler.dispatchMessage(Handler.java:95)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.os.Looper.loop(Looper.java:146)
12-11 09:38:39.413: E/AndroidRuntime(23134): at android.app.Ac
More
IP: 192.168.0.71 11 years 3 months ago - 11 years 3 months ago #8087 by radaee
PDFReader class fit for small zoom level(3x or 4x based screen size),
because it render whole page in 1 Bitmap objects.
large zoom value takes more memories cost. this may take lack of memories.

for large zoom level, plz using PDFLayoutView, this view render a page in many small Bitmap objects.
and not render bitmaps, out of screen area.
but, this class is not finished all features, because of much works need to do.
Last edit: 11 years 3 months ago by .
More
IP: 192.168.0.71 11 years 3 months ago #8104 by asliyanage
Hi Radaee,
Could you please let me know how to stop zooming problematically ?This should be able as if i used 5 as a maximum zoom Level it doesn't zoom after some extent.So i need to apply that to when i am using zoom Level 8?
More
IP: 192.168.0.71 11 years 3 months ago - 11 years 3 months ago #8106 by radaee
in PDFReader, you can replace these code for onSizeChanged
Code:
@Override protected void onSizeChanged( int w, int h, int oldw, int oldh ) { super.onSizeChanged(w,h,oldw,oldh); if( w > h ) Global.zoomLevel = 5; else Global.zoomLevel = 8; if( m_view == null || m_status == STA_ANNOT ) return; if( w <= 0 || h <= 0 ) { w = getWidth(); h = getHeight(); } PDFPos pos = m_view.vGetPos(w/2, h/2); m_view.vResize(w, h); m_view.vSetScale(0, 0, 0);//fit page while resizing. if( m_goto_pageno >= 0 ) { m_view.vGotoPage(m_goto_pageno); m_goto_pageno = -1; } else if( pos != null ) { m_view.vSetPos(pos, w/2, h/2); //m_view.vCenterPage(pos.pageno); } if( m_scale >= 0 ) { m_view.vSetScale(m_scale, 0, 0); m_scale = -1; } }
Last edit: 11 years 3 months ago by .
More
IP: 192.168.0.71 11 years 2 months ago #8148 by asliyanage
Thanks Radaee.This seems fine.But still i am getting blank screen when i try to zooming continously in Landscape mode.So i need to stop zooming after pdf comes to some zoomed level.As a example i need to stop zooming after
m_view.vGetScale()=10f.Could you please let me know how to do this ?
I tried with this in onSizeChanged methos,but seems not working yet.
More
IP: 192.168.0.71 11 years 2 months ago #8151 by asliyanage
Hi Radaee,

Could you please give me an answer for this issue
Time to create page: 0.460 seconds
Powered by Kunena Forum