ホームページ  >  記事  >  ウェブフロントエンド  >  android:padding と android:margin の違い

android:padding と android:margin の違い

巴扎黑
巴扎黑オリジナル
2017-06-28 14:27:431509ブラウズ

この記事は、http://zhujiao.iteye.com/blog/1856980 と http://blog.csdn.net/maikol/article/details/6048647 の 2 つの記事を結合したものです

私自身の考えを追加しました。

AndroidMarginPaddingはHtmlのものと同じです。以下の図に示すように、黄色の部分がパディング、灰色の部分がマージンです。

android:padding と android:margin の違い

一般的な理解:

パディングは内側の境界線であり、はテキスト/画像とコントロールのマージンの間の距離など、コントロールの内部コンテンツを指します

マージンは外側の境界線ですborder、はコントロールとエッジの間の距離を指します。親コントロールのマージン

の対応する属性は、

android:layout_marginBottom="25dip"
android:layout_marginLeft="10dip"
android:layout_marginTop="10dip"
android:layout_marginRight="10dip"
android:paddingLeft= "1dip"
android:paddingTop="1dip"
android:paddingRight="1dip"
android:paddingBottom="1dip"

左、右、上と下の設定は同じで、直接設定できます

android:layout_margin="10dip"
android:padding="5dip"


ボタンに上記の 2 つの属性をそれぞれ設定すると、得られる効果が異なります。

android:paddingLeft="30px":

ボタンに設定されるコンテンツ (画像など) は、ボタンの左端から 30 ピクセルです。

android:layout_marginLeft="30px"

ボタン全体は左側に設定されたコンテンツから 30 ピクセル離れています

これら 2 つのプロパティは B のサブコントロールであると仮定し、B のマージンを設定し、A のマージンを設定します。パディングでも同じ効果が得られます。

パディングを設定する利点:

イメージビューに対応する画像が比較的小さく、クリックしにくい場合は、パディングを追加することでタッチ感度を高めることができます


Androidでサポートされている長さの単位。

  • px (ピクセル): 画面上のポイント。
    ピクセル (ピクセル)。通常、HVGA は 320x480 ピクセルを表し、より一般的に使用されます。

  • in (インチ): 長さの単位。

  • mm (ミリメートル): 長さの単位。

  • pt (ポンド): 1/72 インチ。
    ポイントは、印刷業界で使用される標準的な長さの単位、1pt = 1/72 インチで、非常にシンプルで使いやすいです。

  • dp (密度に依存しないピクセル): 画面密度に基づく抽象的な単位。 160 ドット/インチのモニターでは、1dp = 1px です。

  • dip: dp と同じで、主に android/ophone の例で使用されます。
    デバイスに依存しないピクセル。これはデバイスのハードウェアに関連しており、ピクセルに依存しないこれを使用することをお勧めします。

  • sp (スケールに依存しないピクセル): dp に似ていますが、ユーザーのフォント サイズの設定に基づいてスケールされます。
    スケールされたピクセル (拡大されたピクセル)。主にテキストサイズに最適なフォント表示に使用されます。

現在および将来の表示タイプでユーザー インターフェイスを適切に表示するには、テキスト サイズの単位として常に sp を使用することをお勧めします。Android のデフォルトのフォント サイズも sp です。

長さや高さなど、他の要素の単位としてディップを使用します。もちろん、ビットマップの代わりにベクター グラフィックス シェイプを使用することも検討できます。

dp は密度に依存しません。sp は密度に依存しないだけでなく、スケールにも依存しません。

画面密度が 160 の場合、dp、sp、px は同じです。 1dp=1sp=1pxですが、単位をpxにすると、画面サイズが変わらない場合(3.2インチのままだとします)、画面密度は320になります。

すると、元の TextView の幅は 160px に設定され、密度 320 の 3.2 インチ画面で表示すると、密度 160 の 3.2 インチ画面で表示した場合よりも半分になります。

ただし、160dp または 160sp に設定されている場合。システムは自動的に width 属性値を 320px に設定します。

つまり、160 * 320 / 160です。ここで、320/160 は密度スケーリング係数と呼ばれます。つまり、dp と sp を使用すると、画面密度の変更に応じてシステムが自動的に変換します。

以上がandroid:padding と android:margin の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。