Android选项卡教程中的错误

时间:2010-12-14 19:03:35

标签: java android

我一直试图解决这个问题很长时间,在android ive的选项卡教程上完全跟着它,但在我的TabWidget.java类上继续得到这个错误信息。

  

R.drawable.ic_tab_albums无法解决
  tabWidget.java/HelloTabWidget/src/com/example/tabwidget

  

R.drawable.ic_tab_songs无法解决
  tabWidget.java/HelloTabWidget/src/com/example/tabwidget

继承我的TabWidget.java类的代码

`
     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;
}

}`

2 个答案:

答案 0 :(得分:2)

本教程的第3步中介绍了这一点。

“每个标签都需要一个图标。对于每个图标,您应该创建两个版本:一个用于选择标签,另一个用于未选择标签。”

您只为一个图标创建了一个图标,而不是为所有三个图标。

不可否认,这一步很难写。

答案 1 :(得分:1)

此外,您还需要为src文件夹中的每个活动类(即ArtistsActivity.java,AlbumsActivity.java和SongsActivity.java)创建单独的类文件。

我没有这样做,当我运行它时,项目甚至没有启动。

希望将对本教程进行修订,以免发生额外的时间损失。