Android開発23――スタイルとテーマ


一、基本概念
役割はウェブ開発中のCSSと同じです.スタイルは、単一のコントロールに使用され、トピックはアプリケーション全体または1つ以上のActivityに適用されます.
 
二、インスタンスコード
res/valuesフォルダの下にstyleを作成します.xmlファイル.スタイルの継承が反映されます.スタイルのカバーはCSSと同様、近接原則です.
 

  
  
  
  
  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <resources> 
  3.     <!--   --> 
  4.     <style name="xyStyle"> 
  5.         <item name="android:textSize">18dp</item> 
  6.         <item name="android:textColor">#FF0000</item> 
  7.     </style> 
  8.     <!--  1 --> 
  9.     <style name="txtViewStyle" parent="xyStyle"> 
  10.         <item name="android:layout_width">fill_parent</item> 
  11.         <item name="android:layout_height">wrap_content</item> 
  12.     </style> 
  13.     <!--  2 --> 
  14.     <style name="txtViewStyle.child"> 
  15.         <item name="android:textColor">#0D9DF0</item> 
  16.     </style> 
  17.       
  18.     <!--  Activity--> 
  19.     <style name="xyTheme"> 
  20.         <item name="android:windowNoTitle">true</item> 
  21.         <!--  android:windowNoTitle  --> 
  22.         <item name="android:windowFullscreen">?android:windowNoTitle</item> 
  23.     </style> 
  24. </resources> 

  
  
  
  
  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3.     android:orientation="vertical" 
  4.     android:layout_width="fill_parent" 
  5.     android:layout_height="fill_parent"> 
  6.     <TextView android:text="@string/hello" style="@style/txtViewStyle.child" /> 
  7. </LinearLayout> 

  
  
  
  
  1. <application android:icon="@drawable/icon" android:label="@string/app_name" android:theme="@style/xyTheme"> 
  2.     <activity android:name=".MainActivity" 
  3.               android:label="@string/app_name"> 
  4.         <intent-filter> 
  5.             <action android:name="android.intent.action.MAIN" /> 
  6.             <category android:name="android.intent.category.LAUNCHER" /> 
  7.         </intent-filter> 
  8.     </activity> 
  9. </application> 
  10. <uses-sdk android:minSdkVersion="8" />