Android 如何在单击按钮时从MainActivity.java调用MapActivity.java

Android 如何在单击按钮时从MainActivity.java调用MapActivity.java,android,google-maps,Android,Google Maps,在执行此定位按钮时,我希望我的映射从MainActivity.java中的btnShowLoc函数获取输入值并显示相同的值 activity_main.xml <Button android:onClick="btnShowLoc" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Loc

在执行此定位按钮时,我希望我的映射从MainActivity.java中的btnShowLoc函数获取输入值并显示相同的值

activity_main.xml

        <Button
        android:onClick="btnShowLoc"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Locate" />

    <fragment
        android:id="@+id/map"
        xmlns:tools="http://schemas.android.com/tools"
        xmlns:android="http://schemas.android.com/apk/res/android"
        class="com.google.android.gms.maps.MapFragment"
        android:layout_width="350dp"
        android:layout_height="230dp"
        tools:context=".MapLocationActivity"
        tools:layout="@layout/activity_main" />
使用意图启动MapActivity

是对要执行的操作的抽象描述。它可以与startActivity一起使用以启动活动,broadcastIntent将其发送到任何感兴趣的BroadcastReceiver组件,以及startServiceIntent或bindServiceIntent、ServiceConnection、int与后台服务通信

首先尝试使用下面的代码,使用意图映射活动发送纬度和纬度

Intent i = new Intent(HotelDetailsClass.this, MapActivity.class);
i.putExtra("latitude","28.7041")
i.putExtra("longitude","77.1025");
startActivity(i);
现在在MapActivity中添加此代码

现在载入地图

 @Override
    public void onMapReady(GoogleMap googleMap) {
        mMap = googleMap;
        // Add a marker in Location and move the camera
        LatLng location = new LatLng(latitude, longitude);
        mMap.addMarker(new MarkerOptions().position(location).title(title));
        mMap.moveCamera(CameraUpdateFactory.newLatLng(location));
        mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(latitude, longitude), 14.0f));


    }

我的应用程序在调用MapActivity时崩溃。java@SrijanChaudhary共享您的崩溃日志您得到了什么错误POST异常log@SrijanChaudhary很高兴帮助你
Double latitude, longitude;
Intent i = getIntent();
latitude = Double.valueOf(i.getStringExtra("latitude"));
longitude = Double.valueOf(i.getStringExtra("longitude"));
 @Override
    public void onMapReady(GoogleMap googleMap) {
        mMap = googleMap;
        // Add a marker in Location and move the camera
        LatLng location = new LatLng(latitude, longitude);
        mMap.addMarker(new MarkerOptions().position(location).title(title));
        mMap.moveCamera(CameraUpdateFactory.newLatLng(location));
        mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(latitude, longitude), 14.0f));


    }