0

ボタンとツールバーのサイズを指定するとき、私はXMLレイアウトファイルの「デバイスに依存しないピクセル」(ディップ)機能を使用してきました。ディップを使用することで、GUIコンポーネントの物理的なサイズを指定できます。これは、すべての画面サイズでコンポーネントが常に読み取り可能でクリック可能であることを保証するのに役立ちます。たとえば、私のアプリには、上部に約50dipの高さの水平ツールバーがあり、それに沿っていくつかの40dipx40dipボタンがあります。

ただし、物理的なサイズが小さい画面で表示してクリックするのに十分な大きさのボタンは、タブレットではあまり使用できません。たとえば、私のツールバーには大量の空白が含まれ、ボタンは見づらく(タブレットを顔から遠ざける傾向があるため)、ボタンは実際にはクリックしにくいです(ボタンは画面)

これに対処するための解像度に依存しないアプローチはありますか?

「layout_weight」を使用してコンポーネントを引き伸ばすことができるので、画面の何パーセントを使用するかを指定できますが、これを行う必要がある場合、これは多くのボタン(また、ボタンは正方形である必要があります)にとって非常に面倒です。ほとんど手動で。デバイスごとに異なるレイアウトファイルを使用できますが、これは面倒です。

4

1 に答える 1

1

これに対処するための解像度に依存しないアプローチはありますか?

ディメンションと描画可能なリソースを使用します。

ボタンが「40dipx40dip」であるかどうかを示していません。

40dipレイアウトやスタイルではなく、特定の高さと幅でそのように設定されている場合は、を使用します@dimen/toolbar_btn。次に、それをでres/values/dimens.xmlあると定義し40dip、でres/values-large/dimens.xml(または多分res/values-large-land/dimens.xml)それを、たとえば60dip、、またはあなたのために働くものであると定義します。

画像が原因でボタンが「40dipx40dip」の場合は、タブレット用にやや大きな画像を作成して、たとえばres/drawable-large-mdpi/リソースディレクトリに配置するだけです。

于 2011-03-31T20:29:07.880 に答える