Java Android最小SDK和配色方案
因此,我构建了一个应用程序,它使用API 15中的某个默认颜色方案。然而,我知道大多数设备仍在运行API 10。为了吸引这些设备,我将设备上的最小SDK设置为10。这样做之后,我注意到我的按钮的默认灰黑色现在在旧设备上变成了白色——我怀疑这是因为API 10中没有该特定颜色。因此,我的问题如下:是否需要将此资源打包到我的APK文件中,以便让这些设备看到我想要的颜色,还是需要重新设计?如果您需要使用旧版本中没有的资源,您可以轻松地从SDK的Java Android最小SDK和配色方案,java,android,Java,Android,因此,我构建了一个应用程序,它使用API 15中的某个默认颜色方案。然而,我知道大多数设备仍在运行API 10。为了吸引这些设备,我将设备上的最小SDK设置为10。这样做之后,我注意到我的按钮的默认灰黑色现在在旧设备上变成了白色——我怀疑这是因为API 10中没有该特定颜色。因此,我的问题如下:是否需要将此资源打包到我的APK文件中,以便让这些设备看到我想要的颜色,还是需要重新设计?如果您需要使用旧版本中没有的资源,您可以轻松地从SDK的platforms文件夹中取出它们,并将它们复制到本地应用
platforms
文件夹中取出它们,并将它们复制到本地应用程序中。或者,您可以将旧的设备兼容主题放在res/values/styles.xml
中,并将新的设备兼容版本的主题放在res/values-v11/styles.xml
(将v11替换为资源可用的任何版本——通常v11是主要更改)
编辑:根据您下面的评论,只需在
res/values
下创建另一个themes.xml
文件,并将该样式复制到其中,将父级更改为@android:style/Theme
,而不是Theme.Holo
,如果您需要使用旧版本中不可用的资源,您可以轻松地从<代码>平台文件夹,并将它们复制到本地应用程序中。或者,您可以定义回退样式(只需自己手动编写主题代码,而不使用android样式)通过将旧的设备兼容主题放置在res/values/styles.xml
中,并将新的设备兼容版本的主题放置在res/values-v11/styles.xml
中(将v11替换为资源可用的任何版本,通常v11是主要更改)
编辑:根据您下面的评论,只需在
res/values
下创建另一个themes.xml
文件,并将该样式复制到其中,将父级更改为@android:style/Theme
,而不是Theme.Holo
如果您想在任何地方都使用API级别15的主题,我强烈建议您查看该项目ect
这允许你的应用程序使用相同类型的主题和按钮,而不管API级别如何。如果你想在任何地方都使用API级别15的主题,我强烈建议你看看这个项目
这允许你的应用程序使用相同类型的主题和按钮,而不管API级别如何。不确定你指的是哪种默认配色方案,但对于我使用android 2.1及更高版本中的各种Holo主题非常有用。不确定你指的是哪种默认配色方案,但非常有用对于我来说,在android 2.1及更高版本中使用各种Holo主题是不可能的。除非您在设备(或模拟器)上,否则更改minimumSdk不应该影响这些主题在较低的SDK级别。您是否将targetSdk设置为15级?关键是要使其在运行较低SDK级别的设备上看起来更美观。好吧,您的意思是,问题在于它在较旧的设备上的显示方式不同。我将在一秒钟后发布一个答案。更改minimumSdk不应影响任何方面,除非您使用de副设备(或仿真器)在较低的SDK级别。您是否将targetSdk保留在15级?关键是要让它在运行较低SDK级别的设备上看起来更漂亮。好吧,您的意思是,问题是它在较旧的设备上的显示方式不同。我将在稍后发布一个答案。抱歉,但我对处理主题有点陌生。我真正想做的就是s更改旧设备外壳中按钮上文本的颜色,并在所有新设备的外壳中保留全息主题。您能给我一些简短的示例,说明我必须将XML放入每个文件夹中才能做到这一点吗?您目前正在做什么来设置样式?在我的values-v11文件夹中,我有一个名为themes.XML的文件我在这里的唯一代码是:。我不知道如何处理旧设备。如果您感兴趣,我有一个后续问题。抱歉,但我对处理主题有点陌生。我真正想做的是更改旧设备外壳中按钮上的文本颜色,并在所有新设备的外壳中保留全息主题s、 你能给我一些简短的例子,说明我必须将XML放入每个文件夹中才能做到这一点吗?你目前正在做什么来设置样式?在我的values-v11文件夹中,我有一个名为themes.XML的文件。我这里唯一的代码是:。我不确定如何继续使用旧设备。我在如果你感兴趣的话。