对setOnInfoWindowClickListener的意图

时间:2015-01-17 17:25:16

标签: android android-intent dictionary marker

我正在做一个公交车跟踪器应用程序,我希望应用程序在我点击标记时显示另一个活动。例如巴士站。当我点击它时,它会带我到另一个活动( businfo.xml )并显示有关公交车站的信息。我试图使用意图,但没有运气。它给了我这个错误。 “构造函数Intent(新的GoogleMap.OnInfoWindowClickListener(){},Class)未定义”快速修复将“删除参数以匹配Intent()”。

P.S。请通过 .setOnInfoWindowClickListener 而不是 setOnMarkerClickListener 来检查我是否正确。当我使用 setOnMarkerClickListener 时,eclipse会给我带来错误。

import com.google.android.gms.maps.*;
import com.google.android.gms.maps.GoogleMap.OnInfoWindowClickListener;
import com.google.android.gms.maps.model.*;

import com.example.unitenbustracker.R;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;

public class MainActivity extends FragmentActivity implements OnMapReadyCallback {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    MapFragment mapFragment = (MapFragment) getFragmentManager()
            .findFragmentById(R.id.map);
    mapFragment.getMapAsync(this);
}

@Override
public void onMapReady(GoogleMap map) {
    LatLng mapCenter = new LatLng(2.962584, 101.725738);



    map.moveCamera(CameraUpdateFactory.newLatLngZoom(mapCenter, 163));

    // Flat markers will rotate when the map is rotated,
    // and change perspective when the map is tilted.
    map.addMarker(new MarkerOptions()
            .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_AZURE))
            .position(mapCenter)
            .title("COIT")
            .snippet("Bus Stop")
            .flat(true));

    map.setOnInfoWindowClickListener(new OnInfoWindowClickListener()
            {
                @Override
                public void onInfoWindowClick(Marker arg0) {
                    // call an activity(xml file)
                    Intent I = new Intent(this, BusInfo.class);
                    startActivity(I);
                }

            });   

1 个答案:

答案 0 :(得分:0)

替换:

Intent I = new Intent(this, BusInfo.class);

使用:

Intent I = new Intent(MainActivity.this, BusInfo.class);