我正在开发一个Android应用程序,我使用了这个库
barteksc:机器人-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()函数显示我要显示的区域时,当它重新调用call()时,缩放将被恢复,如果我再次调用selectarea函数,则忽略pdfView.resetZoomWithAnimation()调用,并且我不会不明白为什么。
我的应用程序的伪代码。
selectArea();
//do stuff
resetAnimation()
selectArea();
答案 0 :(得分:1)
****解决方案****
经过数小时的尝试,我找到了解决问题的方法:
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);
}