2011-07-06 15 views
4

どのようにして水平にのみスケーリングする9パッチ画像を作成できますか?私はそれが垂直に拡大縮小しないようにしたい。このような9 PNGを作成することはできません。9水平スケーリングのみによる画像のパッチ

私は記事http://radleymarx.com/blog/simple-guide-to-9-patch/を試しましたが、その方法は機能しません。左のガイドをスキップすると、Eclipseでエラーが発生します。

私はこのimageを水平に拡大して、ヘッダーバーを作成しようとしています。

答えて

1

あなたは代わりに9patchのタイル張りの描画可能なを使用して試みることができる:

あなたが繰り返すようにTILEMODEを設定し、その後、あなたのイメージの非9patchバージョンを使用して、XMLを介し新しい描画可能を作成します。この新しいドロウアブルをヘッダーの背景として設定することができます。これは、説明したように表示されるはずです。この質問は、数年前に回答されている場合でも

http://androidblogger.blogspot.com/2009/01/how-to-have-tiled-background-cont.html

+0

もし私が間違っていないならば、 "繰り返し"さえもイメージを両方向に並べます。それじゃない? – Codevalley

+0

あなたはそうです。画像のサイズに合わせて高さを設定することができます。それは垂直に繰り返されることを防ぐでしょう。 – danh32

4

さて、垂直方向のスケーリングを画像の一部として透明にすることができます。上端と下端のすぐ近くにあるかもしれません。これらのパーツだけが垂直方向に拡大縮小されます。もう一方の垂直断面は同じままです。

+0

実は、私は垂直方向に画像を拡大縮小したくありませんまったく。それはサポートされていませんか? – Codevalley

+0

左側のマークを省いてもサポートされていません。サンプル画像を投稿して、拡大/縮小する方法を説明することができれば、それは素晴らしいことです。 –

+0

更新された質問を見る – Codevalley

0

、私は自分自身のための別の解決策を得ました。 私は、垂直なLinearLayoutにTextviewsをいくつか持たせようとしましたが、そのすべては同じであるが可変の高さです(内容に応じて)。

私のソリューション:

android:paddingLeft="60dp" 
android:paddingRight="60dp" 

(あなたが高いパディング値を追加するよりも、あなたのTextviewsがスリムにしたい場合)

のLinearLayoutで: アンドロイド:paddingLeft = "60dp" アンドロイド:paddingRight = "60dp"

とその子(textviews)設定:

  • その背景として

    9patchファイル

  • アンドロイド:layout_width = "match_parent"

  • アンドロイド:layout_height = "wrap_content"

関連する問題