2014-07-10 74 views
0

我正嘗試在我的應用程序上使用材質設計,因此我創建了值-v21文件夾並在我的styles.xml中包含以下內容文件:如果您使用Android L構建,則無法在較早版本的Android上運行您的應用程序

<style name="AppBaseTheme" parent="android:Theme.Material.Light.DarkActionBar"> 
    <item name="android:actionBarStyle">@style/ActionBar</item> 
</style> 

<style name="ActionBar" parent="@android:style/Widget.Material.Light.ActionBar"> 
    <item name="android:background">#333333</item> 
    <item name="android:titleTextStyle">@style/ActionBar.TitleTextStyle</item> 
</style> 

<style name="ActionBar.TitleTextStyle" parent="@android:style/TextAppearance.Material.Widget.ActionBar.Title"> 
    <item name="android:textColor">#fa6900</item> 
    <item name="android:textStyle">bold</item> 
</style> 

這給了我下面的錯誤,除非我把我的構建目標至Android L:

的項目

錯誤檢索父:沒有資源發現,匹配給定名稱「機器人:Theme.Material .Light.DarkActionBar'

改變我的構建目標,以Android L系統後,該錯誤消失,但這樣做讓我以下錯誤:

平臺L是一個預覽,需要應用程序清單到的minSdkVersion設置爲「L」的AndroidManifest.xml

是否有使用Material Design並且minsdkversion低於「L」?

+0

材質主題目前尚未在支持庫中提供,因此預期爲 –

+0

因此,「預覽」部分中,您可能不希望將支持L和API的應用程序發送至其下方,因爲它可能會更改。 – Ayub

+0

好的,那麼目前還沒有辦法用材料設計發佈應用程序,而沒有使其開發預覽獨佔? – NStorm

回答

0

我還沒有深入L預覽,但最初我認爲你可以從SDK文件夾中獲取一些xml文件以及drawables。

的SDK文件夾,你應該考慮在於:

SDK_PATH/platforms/android-L/data/res/values

SDK_PATH/platforms/android-L/data/res/drawables和等

這樣的:

「styles_material.xml」

<style name="Widget.Material.Button.Toggle"> 
    <item name="background">@drawable/btn_toggle_material</item> 
    <item name="textOn">@string/capital_on</item> 
    <item name="textOff">@string/capital_off</item> 
    <item name="minHeight">48dip</item> 
</style> 

和你可以按照路線找到btn_toggle_material裏面的drawable文件夾。

「btn_toggle_material.xml」

<inset xmlns:android="http://schemas.android.com/apk/res/android" 
    android:insetLeft="4dp" 
    android:insetTop="4dp" 
    android:insetBottom="4dp" 
    android:insetRight="4dp"> 
    <layer-list android:paddingMode="stack"> 
     <item> 
      <ripple android:color="?attr/colorControlHighlight"> 
       <item> 
        <nine-patch android:src="@drawable/btn_toggle_mtrl_alpha" 
         android:tint="?attr/colorButtonNormal" /> 
       </item> 
      </ripple> 
     </item> 
     <item> 
      <selector xmlns:android="http://schemas.android.com/apk/res/android"> 
       <item android:state_checked="false"> 
        <nine-patch android:src="@drawable/btn_toggle_indicator_mtrl_alpha" 
         android:tint="?attr/colorControlNormal" /> 
       </item> 
       <item android:state_checked="true"> 
        <nine-patch android:src="@drawable/btn_toggle_indicator_mtrl_alpha" 
         android:tint="?attr/colorControlActivated" /> 
       </item> 
      </selector> 
     </item> 
    </layer-list> 
</inset> 

這是一個繁瑣的工作,但有些人也做了類似的工作,以「河洛Everwhere」庫中的「河洛風」的時代。

希望它有幫助。

相關問題