【问题标题】:Android application not found the resource ID for the activityAndroid 应用程序找不到活动的资源 ID
【发布时间】:2014-12-05 13:48:44
【问题描述】:

非常奇怪的行为。我的应用程序仅在横向模式下工作。为此,我执行以下操作

<activity 
        android:name=".CopyOfRecordVideoActivityCopy"
        android:theme="@android:style/Theme.NoTitleBar"
        android:screenOrientation="landscape">

我的布局位于 layout-land 文件夹中

当我首先打开此活动时,它会以横向模式打开。当我在此活动中以纵向模式使用意图播放视频时。视频完成后返回此屏幕,我按下设备的主页按钮。如果我再次打开此活动,它会显示找不到资源的异常。如果我将 layout.xml 放在布局文件夹中,则应用程序可以工作,但在两种模式下都可以。如何解决此资源未找到错误。

【问题讨论】:

    标签: android android-layout thread-safety android-camera surfaceview


    【解决方案1】:

    而不是android:name=".CopyOfRecordVideoActivityCopy" 使用完全限定的类名。 类似android:name="com.my.package.CopyOfRecordVideoActivityCopy"

    【讨论】:

    • 我使用了完整路径。但是为了代码安全我写了这个。
    【解决方案2】:

    我认为正确的方法是有 2 种布局,一种用于 landsacpe 在layout-land 文件夹中,另一种在layout 文件夹中。然后,android 会发挥它的魔力,布局会在应用切换方向时自动切换。

    【讨论】:

    • 你是对的。但是我在java文件中使用的surfaceview会被破坏。
    • @AndroidDeveloper 对不起,你什么意思?
    • 我在java类中集成了Camera和SurfaceView来录制视频。视频录制完成后,它会在表面视图上显示播放按钮以播放录制的视频。在看到 40 秒的完整视频后,用户将返回到带有播放按钮和表面视图的相同活动。根据您的回答,播放按钮和表面视图将因活动的娱乐而被破坏。对吗?
    猜你喜欢
    • 2015-01-21
    • 2021-05-22
    • 1970-01-01
    • 1970-01-01
    • 2011-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多