【问题标题】:Subclassing SupportMapFragment results in a NullPointerException子类化 SupportMapFragment 导致 NullPointerException
【发布时间】:2012-12-05 14:08:20
【问题描述】:

我目前正在使用 google-play-services 库 r3 实现我自己的 SupportMapFragment 子类。

当我尝试将我的片段添加到ActivityViewPager 时,我在库的一个内部类中得到了NullPointerException。 这是相关的堆栈跟踪:

java.lang.NullPointerException
    at maps.y.p.onResume(Unknown Source)
    at com.google.android.gms.maps.internal.IMapFragmentDelegate$Stub.onTransact(IMapFragmentDelegate.java:115)
    at android.os.Binder.transact(Binder.java:310)
    at com.google.android.gms.maps.internal.IMapFragmentDelegate$a$a.onResume(Unknown Source)
    at com.google.android.gms.maps.SupportMapFragment$a.onResume(Unknown Source)
    at com.google.android.gms.internal.c$1.a(Unknown Source)
    at com.google.android.gms.internal.c.a(Unknown Source)
    at com.google.android.gms.internal.c.onResume(Unknown Source)
    at com.google.android.gms.maps.SupportMapFragment.onResume(Unknown Source)
    at android.support.v4.app.Fragment.performResume(Fragment.java:1503)
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:947)
    at android.support.v4.app.FragmentManagerImpl.performPendingDeferredStart(FragmentManager.java:807)
    at android.support.v4.app.FragmentManagerImpl.startPendingDeferredFragments(FragmentManager.java:1112)
    at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1461)
    at android.support.v4.app.FragmentManagerImpl.executePendingTransactions(FragmentManager.java:461)

显然此时内部映射为空。

有没有人遇到过这个问题并有解决方案?

【问题讨论】:

  • 我也被这个问题困住了?!你怎么子类化了?我的理由是使用 ActionBarSherlock
  • 目前我不能。但我会准备一些我可以展示的东西。

标签: android android-maps google-play-services


【解决方案1】:

在您的 SupportMapFragment 子类中,您是否重写了 onCreateView(...)?

如果你这样做了,你还需要在你自己的 onCreateView(...) 中调用 super.onCreateView(...) 来让超类创建它的视图。该片段与底层视图紧密相关。

【讨论】:

【解决方案2】:

试试getChildFragmentManger() 还要确保你填写在onActivityCreated()或之后


文档似乎还暗示,如果底层地图系统未运行,它将无法工作。

还要检查您使用的是 ACL 的 v11(尽管我怀疑这就是问题所在)。

【讨论】:

  • 谢谢。但我并不想在我的片段中放置一个 SupportMapFragment。我正在尝试对 SupportMapFragment 进行子类化。此外,我正在使用 ACL v11 并处理了 getMap 的潜在 null 返回值。
猜你喜欢
  • 2015-07-12
  • 1970-01-01
  • 2022-08-11
  • 1970-01-01
  • 1970-01-01
  • 2016-03-07
  • 2017-05-16
  • 1970-01-01
  • 2014-06-09
相关资源
最近更新 更多