-1

片面のみベタ塗りで画像が膨らむ効果を得る方法があれば教えていただきたいです。

次のようなビットマップから始めるとします。 drawable-xxxhdpi/my_bitmap

そして、XML ドローアブルを設定して、その機能を維持しながら水平方向に拡大および縮小しますが、垂直方向には、画像に触れずに上部に単色の「青」を追加して、少ないウィジェットの背景として配置する場合広くて高く私はこれを得る:

drawable/my_expandable_bitmap

9 パッチで片側だけを拡張できる機能があれば、これは完璧です。しかし、9 パッチでは、拡張可能な領域を両方向に定義する必要があります。

これは私が 9patch で達成できることです: 9パッチ横展開

これが私が望むものです(矢印をスケーリングせずに必要なだけ垂直に拡大したいことに注意してください(矢印は常に同じ高さでなければなりません): 欲しかった結果

レイアウトをいじってこれを取得できますが、パフォーマンスには適していません。

最後に、カスタム Drawable を作成することができ、その方法はわかっていますが、RemoteView では機能せず、Remote View を使用していない場合は、コードで設定する必要があります。

XMLドローアブルのみでこの効果を生み出す方法を知っている人はいますか?

4

1 に答える 1

0

私が間違っていなければ、9パッチでそれを行うことができます。画像の左側の小さな部分を選択するだけで、垂直方向に拡大できます。次に、画像の下部は引き伸ばされるべきではなく、上部に単色が追加されているように見えます.

編集

これは私が9パッチで得られるもので、平らになりますが、あなたの例のように直線を追加していません.

オリジナル

ここに画像の説明を入力

より広い(ここではうまく表示されていませんが、より広いです)

ここに画像の説明を入力

于 2015-02-27T15:35:54.663 に答える