<style>の中の<item>

<style>の中の<item>で、そのスタイルで反映すべきパラメータと値を指定するというのをこれまでやってきた。
styles.xmlで、

とすれば、アプリ全体のテーマ"AppTheme"において、android:layout_heightを30dpとするようになる。
これまで、ButtonなどのViewにstyleとして"CustomStyle~"を指定し、複数の特定の値がセットされるようにしてきた。
<item>は個別の変数のような形で使うこともできる。
activity_main.xmlで、

Buttonのandroid:layout_heightに"?attr/android:layout_height"を指定している。
不思議な感じだけど、"?attr/"を付けることで、さっきのstyles.xmlの"android:layout_height"を変数展開して値を反映させる。
つまり、android:layout_heightは30dpとなる。
android:layout_widthにも"?attr/android:layout_height"を指定していることが、"android:layout_height"を変数としての役割のみで使っている証拠。
だからlayout_heightであることに意味はない。
android:layout_widthも30dp。

縦横どちらも30dp
縦横どちらも30dp

縦横どちらも30dp。
ところで、<item>のnameは"android:layout_height"というようにこれまでは"android:"を付けるandroidネームスペースで書いてきた。
これを変数名とするならば、自分で変数名を付けられそうである。

AndroidのTheme/Styleを理解する - Qiita

ただこんな風にしてもダメ
ただこんな風にしてもダメ

ただこんな風にしてもダメ。

そもそもcolorPrimaryなんて定義されてない
そもそもcolorPrimaryなんて定義されてない

そもそもcolorPrimaryなんて定義されてない。
サポートライブラリを入れてないADT Bundle Eclipseみたいな旧環境でcolorPrimaryを定義してないので当然。
そう、定義してないと使えない。

Sample/android/styleTag/itemTag/src/styleTag at master · bg1bgst333/Sample · GitHub