使用Titanium Studio 3.3.0.GA时,Android应用程序崩溃/失败

时间:2014-07-25 21:18:56

标签: android titanium titanium-mobile titanium-alloy

我一直收到这个错误:

Error: No resource found that matches the given name (at 'theme' with value '@android:style/Theme.AppCompat.Light').

这是我的tiap.xml的样子:

<android xmlns:android="http://schemas.android.com/apk/res/android">
        <manifest>
            <application android:theme="@android:style/Theme.AppCompat.Light"/>
            <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19" />
            <supports-screens android:anyDensity="false"/>
        </manifest>
</android>

当我将其更改回之前的"@android:style/Theme.Holo.Light"时,应用程序将崩溃,我将收到此错误:

You need to use a Theme.AppCompat theme (or descendant) with this activity.

注意:我希望它是HoloLight主题。

2 个答案:

答案 0 :(得分:3)

我想通了

这是不正确的(使用3.3.0时):

<application android:theme="@android:style/Theme.AppCompat.Light"/>

这是正确的:

<application android:theme="@style/Theme.AppCompat.Light"/>

你不需要&#34; android&#34; @符号之后的部分。

答案 1 :(得分:2)

您无法使用普通Theme.Holo.Light样式的原因是因为您的最低SDK版本为10,不支持Holo Light主题。因此,编译器建议您将使用的样式更改为支持您尝试开发的较低SDK的样式。解决此问题的一种简单方法是不支持较旧的Android版本,但这可能不适合您。

由于您正在使用Titanium Studio,我知道当其他人使用Eclipse和Android Studio时,找到修复程序可能有点困难(他们可能会告诉您需要添加支持库)到你的构建路径或build.gradle,它并没有完全转换为Titanium Studio),但我相信这个修复工作应该有效。

基本上,你要做的是让运行较新版Android的设备使用Holo Light主题,而旧版本只显示较旧的Light主题。我打算写下关于如何做到这一点的说明,但在Appcelerator的网站上有一篇旧的论坛帖子,详细说明了确切的步骤。以下是具体答案的链接(它是8票的答案):

http://developer.appcelerator.com/question/130719/how-do-you-build-your-app-with-holo-theme#answer-250415

我相信遵循这些步骤可以解决问题。