如果为null,请检查LatLngBounds.Builder

时间:2014-02-10 01:12:41

标签: java android android-maps-v2

这是我的代码:

LatLngBounds.Builder builder = new LatLngBounds.Builder();
for(int x = firstVisibleItem; x < lastVisibleItem; x++){
    builder.include(temp.getPosition());
}

然而,此行会引发错误(java.lang.IllegalStateException: no included points

double north = builder.build().northeast.latitude;

这是因为上述循环根本没有运行,因此builder中没有包含任何点。

如何检查构建器是否至少有一个点?

我尝试builder.build()!=null抛出上述错误,builder!=null始终为True。

try{}catch(IllegalStateException e){ }有效。问!=null方式是愚蠢的吗?美高科技管理?感谢

1 个答案:

答案 0 :(得分:9)

您可以创建一个计数器并使用它来验证您至少有一个点。

int counter = 0;
LatLngBounds.Builder builder = new LatLngBounds.Builder();
for(int x = firstVisibleItem; x < lastVisibleItem; x++){
    counter++;
    builder.include(temp.getPosition());
}
if (counter > 0) {
    //use a LatLngBounds.Builder to build the LatLngBounds object
}