Android作業ログ
=前置き=
単に画像を設定するだけだと思ってたけど、意外と色々とつまったのでメモ。
=画像の比率を維持したままボタン化=
マークや文字まで画像化したものをボタンにする場合、拡大・縮小で潰れてしまうと見た目が悪くなってしまう。そのため、比率を維持したまま拡大・縮小するようにしたい。
色々な方法を試したものの、今のところベストは「ImageButtonのsrcにselectorを指定し、backgroundに#00000000を指定して元の画像は消す」という方法。これ自体を説明したサイトはなかったものの、SORICH | 社会を豊かにするのImageViewをImageButtonに変更した後、「android:background="#00000000"」を追加すればOK。
あとは画像の表示位置に応じて「android:scaleType="fitStart"」などを設定すれば良い。
ベストとは言ったもののこの方法にも難点があって、画像の表示されない余った部分にもボタンの判定があるため、画像以外の部分を押してもボタンが反応してしまう。(backgroundの指定を省けば判定が見える)
ただ、自分の場合は「なんとなく押しても反応してくれる」と好意的にとることにした。実際、密集してる場合でも隣接してる場合は隙間がないし、多少判定が広い方が押しやすかった。