J'ai passé la dernière heure à suivre ce tutoriel. Voici les problèmes et les correctifs pour cela que j'ai traité:
Étape 2: Lorsque vous créez vos activités, si vous ne les créez pas à l'aide du manifeste, vous devrez les ajouter manuellement au manifeste.
Ajouter ces lignes à AndroidManifest.xml:
<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>
Étape 3: Vous ne créer le invité fichier ic_tab_artists.xml. Vous devrez également en créer un pour ic_tab_songs.xml et ic_tab_albums.xml. Vous pouvez simplement dupliquer le fichier ic_tab_artists.xml (ou modifier les spécifications de l'onglet HelloTabView.java pour utiliser le fichier artists.xml pour chaque onglet).
Étape 4: La troisième dernière ligne sous/res/layout/principale a une faute de frappe (un, au lieu d'un :)
android:padding="5dp" />
</LinearLayout>
</TabHost>
Étape 6: Il y a une faute de frappe que les utilisations appelle mTabHost au lieu de tabHost. Changes le.
Comme déjà cité, la fonction getIntent() sur la dernière ligne n'est pas appropriée. Je viens d'appeler l'onglet en fonction de son identifiant. par exemple:
tabHost.setCurrentTabByTag("albums");
J'ai suivi cet exemple la nuit dernière et ça a bien fonctionné. Je n'ai pas copié-collé le code, donc ça peut être buggé. Obtenez-nous votre trace de pile et nous pouvons vous aider. –
Alors qu'un nouveau développeur Android aura probablement besoin de la syntaxe décrite ici car il n'apparaît dans aucun didacticiel, ils semblent avoir mis à jour le tutoriel pour mentionner brièvement cette exigence à l'étape 2: "Dupliquer ceci pour chacun des trois activités et ajoutez les balises correspondantes au fichier manifeste Android "(20 décembre 2010). Si quelqu'un en a besoin, la [référence de syntaxe d'activité] complète (http://developer.android.com/guide/topics/manifest/activity-element.html) est disponible sur developer.android.com. –
patridge