2012-03-02 8 views
1

私はライブ壁紙を作りたいと思っています。そして、私は背景のページをスワイプすると一緒に下の背景のスライドを持っていると同時に、別の層は常にバックグラウンドの上とアプリのアイコンの下にとどまります。Android:ライブ壁紙にレイヤーを追加することはできますか?

これは可能ですか?どのようにすることができますか?

答えて

1

あなたはxOffsetの値を使用してpublic void onOffsetsChanged (float xOffset, float yOffset, float xOffsetStep, float yOffsetStep, int xPixelOffset, int yPixelOffset) を上書きする必要があります、あなたはビットマップの一部を抽出し、画面上にその部分を描画するソース矩形を定義することができます。

この画像はあなたにどのようにxOffset作品の理解与えるべきである:あなたの写真を(幅×高さ)のサイズで960×800である場合、あなたは部分を描きたい場合 は android xOffset example 、5つのホームスクリーンのページがあると仮定するとし

x1 = xOffset * (960 - 480); y1 = 0; x2 = x1 + 480, y2 = 800; 

その後、あなたの転送先矩形は、あなたが上に描画する画面の一部のようになります。サイズ800×480毎回の、そしてあなたは、その座標になるソース矩形を定義することができます。 public void drawBitmap (Bitmap bitmap, Rect src, Rect dst, Paint paint)メソッドを使用して、ビットマップを画面に描画できます。

私はずっと前にこの技術を使っていました。私は投稿する前にこのコードをチェックしなかったし、canvas.translate()を使うなどの選択肢があるかもしれない。しかし、うまくいけば、これはあなたが始めるのを助けるべきです。 :)

関連する問題