我正在使用Google Maps,但发现了一个我从未遇到过的奇怪错误:以下是详细信息。
我正在尝试使用以下方法在边界中放置两个标记:latLngBounds = new LatLngBounds(mDestination, mOrigin); LatLngBounds.Builder builder = new LatLngBounds.Builder(); builder.include(mDestination).include(mOrigin);
我收到以下错误。
java.lang.IllegalArgumentException: southern latitude exceeds northern latitude (23.029011581089936 > 23.0060917)
at com.google.android.gms.common.internal.Preconditions.checkArgument(Unknown Source:38)
at com.google.android.gms.maps.model.LatLngBounds.<init>(Unknown Source:7)
at com.cmrlabs.tracker.MainActivity.drawRoute(MainActivity.java:324)
at com.cmrlabs.tracker.MainActivity.access$500(MainActivity.java:73)
at com.cmrlabs.tracker.MainActivity$2.onMapClick(MainActivity.java:410)
at com.google.android.gms.maps.zzy.onMapClick(Unknown Source:2)
at com.google.android.gms.maps.internal.zzak.dispatchTransaction(Unknown Source:5)
at com.google.android.gms.internal.maps.zzb.onTransact(Unknown Source:12)
at android.os.Binder.transact(Binder.java:667)
at cj.b(:com.google.android.gms.dynamite_mapsdynamite@[email protected] (100700-0):14)
我不知道如何解决这个问题,有什么建议吗?
先感谢您..!
最佳答案
LatLngBounds constructor具有两个参数:西南角和东北角。那不是您所拥有的-您有两点,所以您不应该使用该构造函数。相反,使用Builder
并最终调用build()
来构造LatLngBounds
对象:
LatLngBounds.Builder builder = new LatLngBounds.Builder();
builder.include(mDestination).include(mOrigin);
latLngBounds = builder.build();