【问题标题】:Tab Layout tutorial incomplete?标签布局教程不完整?
【发布时间】:2010-02-23 15:48:38
【问题描述】:

我一直在尝试实现本教程中描述的选项卡 UI:https://developer.android.com/resources/tutorials/views/hello-tabwidget.html

我遵循流程中描述的所有步骤,但我不断收到运行时异常,我认为这与以下事实有关,即在教程中没有添加与内容相关的额外活动(歌曲、艺术家和专辑)将每个选项卡添加到 android 清单文件中。

我说的对吗?本教程(与许多其他教程一样)是否有缺陷或不完整?

【问题讨论】:

  • 利用Log 类并将调试语句留在您认为导致问题的代码块中。完成此操作后,启用LogCat 透视图,当您的代码运行时,它将向控制台打印堆栈跟踪,希望向您显示Runtime 异常的来源。一旦你有了这些,我们就有更好的线索来提供帮助。
  • 查看 logcat 看看抛出 RunTimeException 的位置

标签: android android-tabhost manifest


【解决方案1】:

由于他们似乎偶尔会更新这些教程,我不会怀疑他们在被问到这个问题时会忘记提及这部分。他们似乎现在(截至 2010 年 12 月 20 日)在教程的第 2 步中添加了对这一要求的提及:

为三个活动中的每一个复制此内容,并将相应的标签添加到 Android Manifest 文件中。

不幸的是,由于这些是初学者教程,它们可能应该包含 XML 标记的外观。在本教程之前,他们没有提到如何将活动添加到清单中(尽管您在最后添加了一个活动以隐藏标题栏)。我使用的标记与 OP 自己的答案中提到的另一个问题相同:

<activity android:name=".ArtistsActivity"></activity>
<activity android:name=".AlbumsActivity"></activity>
<activity android:name=".SongsActivity"></activity>

Android 开发者网站上的manifest activities 有完整参考。

【讨论】:

  • 感谢您的参考。有关识别明显遗漏的任何提示?
【解决方案2】:

感谢您的建议,但我真的不必使用 LogCat。该教程确实有缺陷且不完整,相关帖子中已对更正进行了很好的解释。

Issues with Android TabHost Example

我只是对这些教程中的错误数量感到惊讶,而且还没有人修复它们。

纳尔逊

【讨论】:

    【解决方案3】:

    我遇到了同样的问题,即使在做了上面所说的所有更正之后,在下面的帖子link

    问题出在 AndroidManifest,以下清单文件对我有用。

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.tabview.android" android:versionCode="1"
    android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".HelloTabWidget" android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".AlbumsActivity" android:label="@string/app_name"
            android:theme="@android:style/Theme.NoTitleBar">
        </activity>
        <activity android:name=".ArtistsActivity" android:label="@string/app_name"
            android:theme="@android:style/Theme.NoTitleBar">
        </activity>
        <activity android:name=".SongsActivity" android:label="@string/app_name"
            android:theme="@android:style/Theme.NoTitleBar">
        </activity>
    </application>
    
    
    </manifest>
    

    【讨论】:

    • 啊!我错过了&lt;intent-filter&gt; 标签!谢谢老哥
    • 有趣,我知道该怎么做,但我看到了这篇文章,所以我想我会看看。你不会想在这方面是全新的,并尝试遵循所谓的“你好”教程,我的意思是,你好!各种东西都不见了!现在是 2011 年 11 月 13 日,尚未修复!
    猜你喜欢
    • 2011-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多