2011-05-25 76 views
0

我需要创建一个动态壁纸,它只从可绘制目录中抽取图像。 有没有我可以参考的例子?安卓动态壁纸在可绘制目录中显示图像

如果该示例还显示如何在图像顶部绘制简单的内容,那就太好了。如果不是这样,它的确定=)

感谢任何评论

回答

4

一对Android.com网站只是画了一个立方体=(这是很容易)))。使用这样的东西。

在你Engine构造函数中使用这样的事情

Bitmap _background = BitmapFactory.decodeResource(getResources(), R.drawable.test); 

,并在代码中使用这个

private final int WEATHER_ANIMATION_INTERVAL = 1000; 
private final Handler _handler = new Handler(); 

private final Runnable weatherAnimation = new Runnable() 
{ 
    @Override 
    public void run() 
    { 
     drawNextFrame(); 
    } 
}; 

private void drawNextFrame() 
{ 

final SurfaceHolder holder = getSurfaceHolder(); 

try { 
    _canvas = holder.lockCanvas(); 
      if (_canvas != null) 
      { 
       drawAnimation(_canvas); 
      } 
    } 
    finally 
      { 
      if (_canvas != null) 
       holder.unlockCanvasAndPost(_canvas); 
     } 
     // schedule the next frame 
     _handler.removeCallbacks(weatherAnimation); 
     if (_visible) 
     { 
      _handler.postDelayed(weatherAnimation, WEATHER_ANIMATION_INTERVAL); 
     } 
     return; 
} 
private void drawAnimation(Canvas c) 
    { 
     c.drawBitmap(_background, _xOffset, _yOffset, _paint); 
     _weather.draw(c, _xOffset, _yOffset, _paint); 
    } 

我希望这可以帮助您

+0

感谢,这是有益的。 – khan 2011-05-26 00:32:41

+0

我还有一个问题...我有一个非常广泛的图片,它怎么只显示适合“当前”屏幕的部分。我看到其他动态壁纸,当你移动到不同的工作区左侧或右侧时,图片会滚动......这是一个简单的选择吗?谢谢 – khan 2011-05-26 00:34:03

+0

public void onOffsetsChanged(float xOffset,float yOffset, float xStep,float yStep,int xPixels,int yPixels) \t _xOffset = xPixels; \t _yOffset = yPixels; } – George 2011-05-26 05:23:07