2012-02-07 8 views
0

私はそれに穴がある詳細な背景を持っています(真ん中の透明な領域)。背景は詳細なPNG画像です。 このホールをすべてのデバイスに均等に表示します。だから私は9patchのことを考えましたが、細かい部分が画像に絡みついてしまいました。私が9patchを使用しない場合、穴は卵のように見えますが、それはポイントではありません。詳細な背景9patch

これを修正する方法は何ですか?

更新

enter image description here

+0

R uは正しく9パッチを作成-keeps? –

+0

SDKに付属の9パッチツールを使用しましたか?これまでどこにインストールしても、Android SDKを見つけることができます。 –

+0

はい、正しく作成しています。背景にはグラデーションとスタッフがたくさんあるため、背景が歪んでいます。そしてそれは悪く見える。 –

答えて

0

Iは、異なるスクリーンのため(excact場合に優れているものに応じて)2つの異なる方法 -differentリソースを使用します。
-Disadvantage:あなたはousideは0xffffffffとninepatchだろう

-extend Drawableのを使用して、背景とアルファマップあなたのケースでは(アルファマップを与えるためにこれは便利終了している:あなたのアプリサイズ大幅 -Advantageが増加しますあなたのサークルの色として0x00ffffff)をコンストラクタに渡します。 draw()をオーバーライドします。作成する ComposeShader( drawable1、 drawable2、 PorterDuff.Mode.MULTIPLY); シェーダをペイントに設定し、キャンバスに描画します。

-Disadvantage:とても便利ではない は、あなたのアプリのサイズの小さな:)

+0

詳しい情報はありません。私は帰ってきてコードを提供することができます。 – KarlKarlsom

+0

私は自分の写真で質問を編集しました。これから9patchを作成する適切な方法は何ですか? –