Android 縦画面・横画面対応NinePatch画像について

2011/12/27 17:07Update
TAGS: Android | 9patch | NinePatch | draw9patch | 画像 | 拡大表示

背景画像を使ったAndroidアプリのボタンなどは、縦画面や横画面で、それぞれサイズが変わることがあります、「画像を拡大しても画質が変わらない」にしたい場合、NinePatch画像を利用します。

Android SDKにはNinePatchを簡単に設定できる「draw9patch」というツールがあります。







A NinePatch drawable is a standard PNG image that includes an extra 1-pixel-wide border. It must be saved with the extension .9.png, and saved into the res/drawable/ directory of your project.

NinePatch(9-patch)は伸びる区域を定義した画像(PNG)のことです。
9つの部品(上下左右4つの辺と4つの角+中央エリア)から構成されています。
伸びる区域の周りに「1-pixel-wide:1画像数分透過的」ボーダーがあり、ボーダーのトップ&左に黒い点をつけることで、縦と横方向の伸びる位置を定義します。

※「1-pixel-wide」:1画像数分の透過的なボーダー
※伸びるエリア:上下左右4つの辺及び中央エリア
※伸びないエリア:4つの角

伸びるエリアと伸びないエリアを定義することで、画像を拡大しても画質を保てるようになります。


9-patch画像は.9.pngという拡張子でプロジェクトの「res/drawable/」ディレクトリに保存する必要があります。



参考資料


9patchを覚えよう! - 明日の鍵
Draw 9-patch - ソフトウェア技術ドキュメントを勝手に翻訳

チュートリアル:9patchで画像を作る ≪ Tech Booster
Draw 9-patch | Android Developers
Canvas and Drawables | Android Developers

有关作者
Syboos.jp編集長AJavaやオープンソース情報の執筆、Webサイトの開発や運営全般の業務に携わる。

Sponsored Link


Comments

用户名 (required)

Email (will not be published) (required)

URL

Evaluation