2015-10-20 6 views
0

Есть ли решение, которое я могу использовать для анимации каждой буквы, прежде чем рисовать их на холсте ??? Iv искать в Интернете, и я, кажется, не видит ничего разумного ...Android LiveWallpaper animate draw

private void draw() { 
     SurfaceHolder holder = getSurfaceHolder(); 
     Canvas canvas = null; 
     try { 
      canvas = holder.lockCanvas(); 
      if (canvas != null) { 

       // Draw background 
       canvas.drawColor(PrefService.getBgColor());         

       StaticLayout textLayout = new StaticLayout(TEXT_I_WOULD_LIKE_TO_ANIMATE, textPaint, screenWidth - screenWidth/8, Layout.Alignment.ALIGN_CENTER, 1.0F, 1.0F, true); 
       canvas.translate((screenWidth/2) - (textLayout.getWidth()/2), (screenHeight/2) - ((textLayout.getHeight()/2))); 
       textLayout.draw(canvas); 
      } 
     } finally { 
      if (canvas != null) {    
        holder.unlockCanvasAndPost(canvas);     
      } 
     } 
    } 
    handler.removeCallbacks(drawRunner); 
    handler.postDelayed(drawRunner, 20000); 
} 

Примечание переменная TEXT_I_WOULD_LIKE_TO_ANIMATE выше StaticLayout

Любая помощь очень ценится

ответ

0

Создание рендеринга нити в Wich вы цикл вы рисуете метод. Затем вы можете сделать позицию для текстовой переменной и изменить положение текста, в котором каждый кадр. И чтобы нарисовать текст на холсте, вы должны использовать canvas.drawText (...). Надеюсь, я смогу вам помочь.