首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于应用编程接口级别5的NullPointerException帮助

关于应用编程接口级别5的NullPointerException帮助
EN

Stack Overflow用户
提问于 2010-12-19 01:45:01
回答 2查看 852关注 0票数 1

我使用API8级开发我的应用程序,但最低SDK是3级。我在运行8级的模拟器和我的DroidX以及一些朋友的手机上进行了大部分测试。到目前为止还没有问题。还应该知道的是,我没有使用任何第三级以上的应用程序接口,标签布局几乎是谷歌here提供的示例的副本。所以..。当在带有5API的仿真器上运行时,我得到了以下错误,除了对TabWidget的引用之外,我不知道它来自哪里。

代码语言:javascript
复制
Uncaught handler: thread main exiting due to uncaught exception
java.lang.NullPointerException
  at android.widget.TabWidget.dispatchDraw(TabWidget.java:206)
  at android.view.ViewGroup.drawChild(ViewGroup.java:1524)
  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
  at android.view.ViewGroup.drawChild(ViewGroup.java:1524)
  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
  at android.view.ViewGroup.drawChild(ViewGroup.java:1524)
  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
  at android.view.View.draw(View.java:6539)
  at android.widget.FrameLayout.draw(FrameLayout.java:352)
  at android.view.ViewGroup.drawChild(ViewGroup.java:1526)
  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
  at android.view.View.draw(View.java:6539)
  at android.widget.FrameLayout.draw(FrameLayout.java:352)
  at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1830)
  at android.view.ViewRoot.draw(ViewRoot.java:1348)
  at android.view.ViewRoot.performTraversals(ViewRoot.java:1113)
  at android.view.ViewRoot.handleMessage(ViewRoot.java:1632)
  at android.os.Handler.dispatchMessage(Handler.java:99)
  at android.os.Looper.loop(Looper.java:123)
  at android.app.ActivityThread.main(ActivityThread.java:4310)
      at java.lang.reflect.Method.invokeNative(Native Method)
  at java.lang.reflect.Method.invoke(Method.java:521)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
  at dalvik.system.NativeStart.main(Native Method)


    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, parent.class);

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

    intent = new Intent().setClass(this, bookmarks.class);
    spec = tabHost.newTabSpec("bookmarks").setIndicator("Bookmarks",
                      res.getDrawable(R.drawable.ic_tab_bookmarks))
                  .setContent(intent);
    tabHost.addTab(spec);

    // Do the same for the other tabs
    intent = new Intent().setClass(this, search.class);
    spec = tabHost.newTabSpec("search").setIndicator("Search",
                      res.getDrawable(R.drawable.ic_tab_search))
                  .setContent(intent);
    tabHost.addTab(spec);
    tabHost.setCurrentTab(0);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-19 02:55:42

由于没有代码可用,很难给你太多建议。

  • 如果您未使用TabActivity,请确保在对TabHost调用setup()后再对其执行其他操作。
  • 由于异常来自TabWidget,请尝试临时简化选项卡指示器,看看这是否有助于本地化或清除问题。
票数 1
EN

Stack Overflow用户

发布于 2011-03-02 12:19:37

当我将其保存在linearLayout中时,我的the主机显示了2.1更新的nullPointer异常,但当我尝试相对布局时,它工作得很好。因此,如果你遇到同样的情况,这种改变可能会对你有所帮助。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4479250

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档