gpt4 book ai didi

android - 将布局 xml 文件保存在 layout-xlarge-land 文件夹中时应用程序无法启动

转载 作者:行者123 更新时间:2023-11-30 04:03:09 25 4
gpt4 key购买 nike

我正在创建一个只针对横向模式的平板电脑用户的应用程序。所以我在 res 中创建了一个名为 layout-xlarge-land 的文件夹,并将我所有的 layout xml 文件放入其中并保存了 布局文件夹 为空。我还在 list 文件中设置了支持屏幕属性

<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:normalScreens="false"
android:smallScreens="false" />

我还将所有 Activity 的方向设置为横向

activity
android:name=".HomeActivity"
android:label="@string/title_activity_main"
android:screenOrientation="landscape">
</activity>

当我启动我的应用程序时,它没有开始显示意外停止的消息。

但是当我将所有 layout xml 文件放入 layout 文件夹 时,我的应用程序运行正常。

为什么会有这种行为?在我看来,Android 系统 应该首先查看 layout-xlarge-land 文件夹以获取 UI。如果找不到,请查看“布局文件夹”。谁能解释我是对还是错?

日志:

08-29 12:06:15.040: E/AndroidRuntime(3468): java.lang.RuntimeException: Unable to    
start activity ComponentInfo{com.abs.qpr/com.abs.qpr.LauncherActivity}:

android.content.res.Resources$NotFoundException: Resource ID #0x7f030001

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1751)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1767)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread.access$1500(ActivityThread.java:122)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1005)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.os.Handler.dispatchMessage(Handler.java:99)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.os.Looper.loop(Looper.java:132)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread.main(ActivityThread.java:4028)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
java.lang.reflect.Method.invokeNative(Native Method)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
java.lang.reflect.Method.invoke(Method.java:491)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:844)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
dalvik.system.NativeStart.main(Native Method)

08-29 12:06:15.040: E/AndroidRuntime(3468): Caused by:
android.content.res.Resources$NotFoundException: Resource ID #0x7f030001

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.content.res.Resources.getValue(Resources.java:1014)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.content.res.Resources.loadXmlResourceParser(Resources.java:2039)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.content.res.Resources.getLayout(Resources.java:853)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.view.LayoutInflater.inflate(LayoutInflater.java:389)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.view.LayoutInflater.inflate(LayoutInflater.java:347)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:245)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.Activity.setContentView(Activity.java:1780)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
com.abs.qpr.LauncherActivity.onCreate(LauncherActivity.java:17)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)

08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1715)

08-29 12:06:15.040: E/AndroidRuntime(3468): ... 11 more`

最佳答案

正如其他用户提到的那样,layout-xlarge-land 支持 9 以上的 API 级别。随着 list 的更改,我猜您还必须将构建目标设置为 2.3。

项目 -> 属性 -> android -> 将目标更改为 2.3

关于android - 将布局 xml 文件保存在 layout-xlarge-land 文件夹中时应用程序无法启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12171715/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com