2010-12-14 9 views
0

Ive versucht, dies ewig zu beheben, auf der Registerkarte Tutorial für android ive es genau befolgt, aber halten diese Fehler messege Klasse auf meinem TabWidget.java bekommen.Fehler in Android Tab Tutorial

R.drawable.ic_tab_albums nicht
tabWidget.java/HelloTabWidget/src/com/example/tabwidget

und

R.drawable.ic_tab_songs aufgelöst werden kann nicht aufgelöst werden
tabWidget.java/HelloTabWidget/src/com/example/tabwidget

Heres mein Code für meine TabWidget.java Klasse

`
Import com.example.androidtab.R;

import android.app.Activity; 
import android.content.Intent; 
import android.content.res.Resources; 
import android.os.Bundle; 
import android.widget.TabHost; 

public class TabWidget extends Activity { 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    Resources res = getResources(); // Resource object to get Drawables 
    TabHost tabHost = getTabHost(); // The activity TabHost 
    TabHost.TabSpec spec; // Resusable TabSpec for each tab 
    Intent intent; // Reusable Intent for each tab 

    // Create an Intent to launch an Activity for the tab (to be reused) 
    intent = new Intent().setClass(this, ArtistsActivity.class); 

    // Initialize a TabSpec for each tab and add it to the TabHost 
    spec = tabHost.newTabSpec("artists").setIndicator("Artists", 
         res.getDrawable(R.drawable.ic_tab_artists)) 
        .setContent(intent); 
    tabHost.addTab(spec); 

    // Do the same for the other tabs 
    intent = new Intent().setClass(this, AlbumsActivity.class); 
    spec = tabHost.newTabSpec("albums").setIndicator("Albums", 
         res.getDrawable(R.drawable.ic_tab_albums)) 
        .setContent(intent); 
    tabHost.addTab(spec); 

    intent = new Intent().setClass(this, SongsActivity.class); 
    spec = tabHost.newTabSpec("songs").setIndicator("Songs", 
         res.getDrawable(R.drawable.ic_tab_songs)) 
        .setContent(intent); 
    tabHost.addTab(spec); 

    tabHost.setCurrentTab(2); 
} 

private TabHost getTabHost() { 
    // TODO Auto-generated method stub 
    return null; 
} 

} `

+1

Siehe meine Frage: http://stackoverflow.com/questions/2209406/issues-with-android-tabhost-example – KevinDTimm

+0

beziehen Sie sich insbesondere auf die Antwort von Ted, dass KevinDTimm zu verknüpfen ist. Es weist darauf hin, dass das Lernprogramm Sie nicht angewiesen hat, die anderen 2 XML-Dateien zu erstellen, die erforderlich sind, damit dieses Beispiel funktioniert. –

Antwort

2

, die in Schritt 3 des Tutorials abgedeckt ist.

„Sie brauchen ein Symbol für jede Ihrer Registerkarten für jedes Symbol, sollten Sie zwei Versionen erstellen:.. Eine für, wenn der Reiter ausgewählt ist und eine für die, wenn es nicht ausgewählt ist“

Sie erstellt nur ein Symbol für einen, nicht für alle drei.

Zugegeben, dieser Schritt ist ziemlich schlecht geschrieben.

+0

Dieser Schritt ist nicht obligatorisch. Sie können ganz glücklich 1 Bild für alle Zustände des Tabs haben –

1

Auch müssen Sie für jede Aktivität Klasse eine separate Klassendatei machen (dh ArtistsActivity.java, AlbumsActivity.java und SongsActivity.java) im src Ordner.

Ich war nicht so tun, und das Projekt starten war nicht einmal, wenn ich es lief.

Hoffentlich wird die Revision wird das Tutorial gemacht werden, so dass keine zusätzlichen Zeitverlust passiert.