2016-04-22 7 views
-1

Like Title、OnMarkerClickListenerまたはOnInfoWindowClickListenerを追加すると私のアプリケーションがクラッシュします。私を助けてください。私はコードを更新しました これは私のコードです、残念私は初心者です:Onmarkerclicklistenerを追加した後にクラッシュしました

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_maps); 
     // Obtain the SupportMapFragment and get notified when the map is ready to be used. 
     SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager() 
       .findFragmentById(R.id.map); 
     mapFragment.getMapAsync(MapsActivity.this); 
     btnBeHost = (Button)findViewById(R.id.btnBeHost); 
     requestQueue = Volley.newRequestQueue(this); 

     //be a host btn when clicked 
     ... 

     //Welcome 
     ... 

     //get coordinates of motels and show on map 
     //latitude request 
     ... 
     //longitude request 
     ... 
     RequestQueue queue = Volley.newRequestQueue(MapsActivity.this); 
     queue.add(latReq); 
     queue.add(lngReq); 

     mMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() { 
      @Override 
      public boolean onMarkerClick(Marker marker) { 
       Toast.makeText(MapsActivity.this,"zzzz",Toast.LENGTH_LONG).show(); 
       return false; 
      } 
     }); 
    } 
    @TargetApi(Build.VERSION_CODES.M) 
    @Override 
    public void onMapReady(GoogleMap googleMap) { 
     mMap = googleMap; 
     mMap.getUiSettings().setZoomControlsEnabled(true); 
     //set my location enabled 

... }

+0

共有ログカートメッセージなしであなたを助けることができる人は誰もいません –

+0

コードを提供していない場合はお手伝いできません。 –

+0

質問の詳細を拡大できますか?おそらく、問題が発生しているコードとエラーメッセージが表示されることがあります。 –

答えて

1

)あなたは)(あなたのonCreateにMMAPのメソッドを呼び出そうとしているが、あなたはonMapReady(でそれを割り当てるまでMMAPはnullになります。

の後にまで待つ必要があります(後でonMapの準備ができたか、または後で実行されるもので後で)、イベントリスナーを設定するメソッドなどを呼び出す必要があります。

+0

私はonMapReadyに配置し、完全に働いた。ありがとうございます:> –