Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android中设置缩放动画_Android_Pdfview - Fatal编程技术网

如何在Android中设置缩放动画

如何在Android中设置缩放动画,android,pdfview,Android,Pdfview,我正在开发一个Android应用程序,我使用了这个库 barteksc:android pdf查看器:2.3.0 我必须实现一个简单的动画,这是我实现的代码: private void selectArea(){ /* Stop movement, jump to page 2, disable all action on PDFView*/ pdfView.stopFling(); pdfView.jumpTo(2); pdfView.setEnabled(fa

我正在开发一个Android应用程序,我使用了这个库

barteksc:android pdf查看器:2.3.0

我必须实现一个简单的动画,这是我实现的代码:

private void selectArea(){
    /* Stop movement, jump to page 2, disable all action on PDFView*/
    pdfView.stopFling();
    pdfView.jumpTo(2);
    pdfView.setEnabled(false);
    pdfView.zoomWithAnimation(0, 1500, (float) 1.95);      
}


private void resetAnimation() {
   pdfView.resetZoomWithAnimation();
}
我需要选择某个区域,重置缩放并再次选择该区域,因此问题是:

当我调用selectarea()函数时,会显示我想要显示的区域;当我调用resetarea()时,缩放会恢复;如果我再次调用selectarea函数,则会忽略pdfView.resetZoomWithAnimation()调用,我不明白为什么

我的应用程序的伪代码

selectArea();
//do stuff
resetAnimation()
selectArea();
****解决方案****

经过数小时的尝试,我找到了问题的解决方案:

private void selectAreaToSign(){
    /* Stop movement, jump to page 2, disable all action on PDFView*/
    pdfView.stopFling();
    pdfView.clearFocus();
    pdfView.jumpTo(2);
    pdfView.setEnabled(false);
    pdfView.clearAnimation();
    pdfView.clearFocus();

    if(isFirstTime){
        pdfView.zoomWithAnimation(0, 1700, (float) 2.00);
    }else{
        resetAnimation();

        Handler handler = new Handler();
        handler.postDelayed(new Runnable() {
            @Override
            public void run() {
                sv.setVisibility(View.VISIBLE);
                pdfView.zoomWithAnimation(4500, 1700, (float) 2.00);
            }
        }, 1000);
    }
}

private void resetAnimation() {
    pdfView.resetZoomWithAnimation();
    sv.setVisibility(View.INVISIBLE);
    pdfView.zoomTo(1);
}

请在回答中张贴您的解决方案,并将其从问题中删除