2012-05-06 13 views
2

に非長方形の形状を描く私はアンドロイドのxmlドロウアブルでこの形状を実装しようとしています:アンドロイド

enter image description here

私は矩形を取得することができるが、私は三角形の先端を得るために把握することができます。私はまた、この形にグラデーションを適用する必要があります。

ご協力いただきまして誠にありがとうございます。

答えて

0

XMLドロワブルを活用することは、9パッチのドロウアブルを使ってクリッピングマスクを作成し、それを長方形ドロアブルに投影することだと思います。

これはおそらくカスタム描画可能なクラスを必要とします。私はこのQ/Aが問題のその部分を解決するかもしれないことを捜索し、発見しました。 Masking a Drawable/Bitmap on Android

SDKのドキュメントClipDrawableを見ると、それが役に立ちそうですが、名前の付けられていないクラスである可能性があります。それは私が思ったことをしません。

これを実現する簡単な方法は、オブジェクト自体から9パッチを作成することです。残念ながら、これを行うとグラデーションの柔軟性が失われます。

0

9パッチを使用して描画できます。

http://developer.android.com/tools/help/draw9patch.html

ちょうど三角形のヒントを少し道を周りにトリミングし、こののように9パッチを作成し、それの上にあなたのグラデーションを描画する描画可能な形状を使用しています。