1

ここに画像の説明を入力

Frame/Linear/Relative レイアウトの contentArea を定義して、境界layout.addView(view);内にのみ追加され、残りのビューが切り取られるようにしたいと考えています。シャツの写真のように、シャツの境界をコンテンツの領域として定義したい場合はどうすればよいでしょうか。提案/ヘルプはありますか? ありがとう

PS: 9 パッチ (右と下) ではそれを行うことはできません。長方形の形状でしか定義されていないためです。この場合、形状はシャツのようなものであれば何でもかまいません。contentArea の白・透明部分を省略したい。

4

2 に答える 2

3

以下のコードを試してください:- 誰かが同じ問題を解決しようとしている場合に備えて、より良い解決策があります: Bitmap.createBitmap(Bitmap, int x, int y, int width, int height)。たとえば、ビットマップの各辺から 10 ピクセルをトリミングする必要がある場合は、次のように使用します。

Bitmap croppedBitmap = Bitmap.createBitmap(originalBitmap, 10, 10, originalBitmap.get
于 2013-08-23T12:18:14.440 に答える
2

それは本当にあなたができることではありません。私が理解していることから、このクリップされたコンテナーにビューを追加する必要があるため、PorterDuff を使用することはできません。あなたに役立つかもしれない簡単なトリックを提案します。Frame/RelativeLayout の上に imageview を追加するだけで、表示したい部分が完全に透明で、クリップしたい領域が不透明な画像がコンテンツとして含まれます。そのようにグラフィカルに言えば、必要なものを正確に達成する必要があります。

于 2013-08-29T09:53:22.290 に答える