1

android:padding="120dip"画面サイズに応じて異なる必要があり、他のいくつかの xml を作成したくない場合はどうすればよいですか?

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/right_back"
    android:orientation="horizontal"
    android:padding="120dip" >
4

2 に答える 2

9

1 つの文字列リソースに異なる値が必要なため、異なる画面に基づいて、valuesフォルダーと同じ方法で異なるフォルダーを作成できdrawableます。

ここに画像の説明を入力

すべてのフォルダーで、dimens.xmlを作成し、すべてのファイルで同じ変数名を指定するが、値が異なることを確認します。

例えば:

フォルダー内の私の dimens.xml は次のようなものです:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <dimen name="padding_val">100dp</dimen>
</resources>

だから今、あなたはただ言及する必要がありますandroid:padding="@dimen/padding_val".

ただし、これはvaluesフォルダー用です。同じ dimens.xml ファイルを作成し、必要な値を入力します。

于 2012-06-14T13:00:53.970 に答える
0

Dip (密度に依存しないピクセル) は画面サイズに依存しません。つまり、120dip の余白を定義すると、各画面サイズに比例して均等な余白になります。

DIP の意味: px * 密度係数。たとえば、ldpi では係数は 1.0、mdpi では 1.5、hdpi では 2.0 です。

したがって、100dip のマージンが必要だと言うと、ldpi では 100px、mdpi では 150px、hdpi では 200px になり、視覚的に同じサイズになります。

于 2012-06-14T12:53:42.963 に答える