例えば、Nexus 4のエミュレーター(4.7インチ画面、768 x 1280 px)でそれぞれの単位を指定すると以下のようになります。(文字サイズは大にしています)

この記事ではそれらの単位の違いについて紹介します。
単位には相対的と物理的なものがある!
サイズ指定に使用できる単位には①相対的単位と②物理的単位の2つがあります。例えば、dp,、spは相対的単位であり、pxは物理的単位です。
以下に単位のまとめを示します。
単位 | 説明 | |
相対的単位 | dp | 密度非依存ピクセル(Density-independent Pixels)。 160 dpi(※)の画面において1 dp = 1 pxとなり、 デバイスのdpiに対して相対的に変化する。 (※dpiは1平方インチあたりのドット数密度) |
sp | スケール非依存ピクセル(Scale-independent Pixels)。 デバイスのフォントサイズ設定によって相対的に変化する。 | |
物理的単位 | px | ピクセル数 |
in | インチ | |
mm | ミリメートル | |
pt | ポイント(1/72インチ) |
結局pxとdpって何が違うの?
pxとdpって結局どう違うのか?を例を交えて説明します。dpは160 dpiのデバイスでは1 dp = 1 pxと同じサイズになります。
よって、160 dpiのデバイス同士では以下のように200 dpの正方形と200 pxの正方形は同サイズになります。

もし、右側のデバイスが320 dpiのドット数密度だった場合はさきほどの例はどうなるでしょうか?
答えは以下のようになります。

よって200 pxのサイズも半分になってしまい、ここままではデバイスによって同じサイズのUIにすることができません。
そこで活躍するのがdpの相対的単位です。dpはこのdpiの違いを考慮して自動的に同じサイズにしてくれます。
さきほどの160 dpiと320 dpiデバイスのそれぞれで200 dpを表示した場合を以下に示します。

spは?
spはdpに似ていますが、こちらはデバイスのフォントサイズ設定に依存して相対的にサイズを変えます。よって、spはTextViewなどでフォントサイズを指定するときに使用すると良いでしょう。
px⇔dp⇔spの変換方法
コード内における動的なpx⇔dp⇔spの変換方法については以下の記事にまとめています。まとめ
この記事ではAndroidアプリ開発におけるpx、dp、spなどのサイズ指定違いについて例を交えて紹介しました。dpやspをうまく使用することで、異なるデバイスでも同じようにUIを表示するようにデザインすることができます。