2016-11-22 51 views
2

我開發一個Android應用程序縮放,我用這個庫如何在動畫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(); 
+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); 
}