如果您使用Android L构建,则无法在较早版本的Android上运行您的应用程序
问题描述:
我正尝试在我的应用程序上使用材质设计,因此我创建了值-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”?
答
我还没有深入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”库中的“河洛风”的时代。
希望它有帮助。
材质主题目前尚未在支持库中提供,因此预期为 –
因此,“预览”部分中,您可能不希望将支持L和API的应用程序发送至其下方,因为它可能会更改。 – Ayub
好的,那么目前还没有办法用材料设计发布应用程序,而没有使其开发预览独占? – NStorm