【问题标题】:android live wallpaper display image in drawable directoryandroid动态壁纸在drawable目录中显示图像
【发布时间】:2011-05-25 21:34:36
【问题描述】:

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

如果该示例还显示了如何在图像上绘制一些简单的东西,那就太好了。如果没有,没关系=)

Android.com 网站上的那个只是绘制了一个立方体 =(

感谢您的评论

【问题讨论】:

    标签: android live-wallpaper


    【解决方案1】:

    这很容易)))。使用类似的东西。

    在你的 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);
        }
    

    希望对你有帮助

    【讨论】:

    • 我还有一个问题...我的图片很宽,怎么只显示适合“当前”屏幕的部分。我看到其他动态壁纸,当您向左或向右移动到不同的工作区时,图片会滚动……这是一个简单的选择吗?谢谢
    • public void onOffsetsChanged(float xOffset, float yOffset, float xStep, float yStep, int xPixels, int yPixels) { _xOffset = xPixels; _yOffset = yPixels; }
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多