自2018年10月18日起,高德开发者论坛除车机板块外,其他板块将停止发帖与维护,如您有使用问题请 提交工单 联系我们,感谢您的理解。

查看: 202|回复: 0
打印 上一主题 下一主题

[报错] mapView找不到报空指针

[复制链接]
最佳答案
0 

2

主题

4

帖子

18

积分

新手上路

Rank: 1

积分
18
跳转到指定楼层
楼主
发表于 2017-5-18 11:37:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
发表帖子
API/SDK版本号: 17
产品: 3D地图
手机型号: 一加3
使用接口:
  1. java.lang.RuntimeException: Unable to start activity ComponentInfo{com.toucan.reactnative/com.toucan.reactnative.activity.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.amap.api.maps.MapView.onCreate(android.os.Bundle)' on a null object reference
  2.                                                                             at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2760)
  3.                                                                             at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2846)
  4.                                                                             at android.app.ActivityThread.-wrap12(ActivityThread.java)
  5.                                                                             at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1550)
  6.                                                                             at android.os.Handler.dispatchMessage(Handler.java:102)
  7.                                                                             at android.os.Looper.loop(Looper.java:154)
  8.                                                                             at android.app.ActivityThread.main(ActivityThread.java:6322)
  9.                                                                             at java.lang.reflect.Method.invoke(Native Method)
  10.                                                                             at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
  11.                                                                             at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
  12.                                                                          Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.amap.api.maps.MapView.onCreate(android.os.Bundle)' on a null object reference
  13.                                                                             at com.toucan.reactnative.fragment.ToucanMapFragment.onCreateView(ToucanMapFragment.java:62)
  14.                                                                             at android.support.v4.app.Fragment.performCreateView(Fragment.java:2192)
  15.                                                                             at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1299)
复制代码
项目中用了butterknife,原先以为是这个问题,但在更新成findViewById之后还是有这个问题,娘家问问。代码如下:
Fragment:
  1. public class ToucanMapFragment extends Fragment implements View.OnClickListener {
  2. //    @BindView(R.id.mapView)
  3.     private MapView mapView;

  4.     private AMap aMap;
  5.     @BindView(R.id.basicmap)
  6.     private Button basicmap;
  7.     @BindView(R.id.rsmap)
  8.     private Button rsmap;
  9.     @BindView(R.id.nightmap)
  10.     private Button nightmap;
  11.     @BindView(R.id.navimap)
  12.     private Button navimap;

  13.     @BindView(R.id.check_style)
  14.     private CheckBox mStyleCheckbox;
  15.     Bundle savedInstanceState;

  16.     public static ToucanMapFragment newInstance(Bundle param) {
  17.         ToucanMapFragment tmf = new ToucanMapFragment();
  18.         tmf.setArguments(param);
  19.         return tmf;
  20.     }

  21.     @Override
  22.     public void onCreate(Bundle savedInstanceState) {
  23.         this.savedInstanceState=savedInstanceState;
  24.         super.onCreate(savedInstanceState);
  25.     }

  26.     @Override
  27.     public View onCreateView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) {
  28.         View view = layoutInflater.inflate(R.layout.toucan_map_fragment, null);
  29.         mapView= (MapView) getActivity().findViewById(R.id.mapView);
  30.         mapView.onCreate(savedInstanceState);
  31.         init();
  32.         super.onCreateView(layoutInflater, viewGroup, bundle);
  33.         return view;
  34.     }

  35.     /**
  36.      * 方法必须重写
  37.      */
  38.     @Override
  39.     public void onResume() {
  40.         super.onResume();
  41.         mapView.onResume();
  42.     }
复制代码
xml:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <RelativeLayout
  3.     xmlns:android="http://schemas.android.com/apk/res/android"
  4.     android:layout_width="match_parent"
  5.     android:layout_height="match_parent">

  6.     <com.amap.api.maps.MapView
  7.         android:id="@+id/mapView"
  8.         android:layout_width="wrap_content"
  9.         android:layout_height="match_parent" />

  10.     <CheckBox
  11.         android:id="@+id/check_style"
  12.         android:layout_width="wrap_content"
  13.         android:layout_height="wrap_content"
  14.         android:textSize="12sp"
  15.         android:text="开启个性化地图"/>

  16.     <LinearLayout
  17.         android:layout_width="wrap_content"
  18.         android:layout_height="wrap_content"
  19.         android:layout_alignParentRight="true"
  20.         android:orientation="vertical">

  21.         <Button
  22.             android:id="@+id/basicmap"
  23.             android:layout_width="65dp"
  24.             android:layout_height="32dp"
  25.             android:gravity="center"
  26.             android:textSize="12sp"
  27.             android:text="标准地图"/>
  28.         <Button
  29.             android:id="@+id/rsmap"
  30.             android:layout_width="65dp"
  31.             android:layout_height="32dp"
  32.             android:gravity="center"
  33.             android:textSize="12sp"
  34.             android:text="卫星地图"/>
  35.         <Button
  36.             android:id="@+id/nightmap"
  37.             android:layout_width="65dp"
  38.             android:layout_height="32dp"
  39.             android:gravity="center"
  40.             android:textSize="12sp"
  41.             android:text="夜间模式"/>
  42.         <Button
  43.             android:id="@+id/navimap"
  44.             android:layout_width="65dp"
  45.             android:layout_height="32dp"
  46.             android:gravity="center"
  47.             android:textSize="12sp"
  48.             android:text="导航模式"/>

  49.     </LinearLayout>
  50. </RelativeLayout>
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|小黑屋|高德开发者论坛

Copyright ©2014 高德开发者论坛.All Rights Reserved |京ICP证070711号

意见反馈 常见问题 服务条款 联系我们
快速回复 返回顶部 返回列表