【发布时间】:2017-08-06 07:58:01
【问题描述】:
我需要一些帮助。正如您在我的代码中看到的那样。看来我总是得到 else 的结果。
例如:字符串s的结果是点击折线后的1。结果应该在(s == "1") 然后执行toast。但最终它总是会去else。
@Override
public void onPolylineClick(Polyline polyline) {
// Flip the values of the red, green and blue components of the polyline's color.
polyline.setColor(polyline.getColor() ^ 0x00ffffff);
String s = polyline.getId().substring(2);
if (s == "0")
{
Toast.makeText(getActivity(), "pl0 here" , Toast.LENGTH_SHORT).show();
}
else if (s == "1")
{
Toast.makeText(getActivity(), "pl1 here", Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(getActivity(), "Inside ELSe", Toast.LENGTH_SHORT).show();
Toast.makeText(getActivity(), "" + s, Toast.LENGTH_SHORT).show();
Toast.makeText(getActivity(), "pl" + polyline.getId().substring(2), Toast.LENGTH_SHORT).show();
Toast.makeText(getActivity(), "" + s + "==" + "pl" + polyline.getId().substring(2), Toast.LENGTH_LONG).show();
}
}
【问题讨论】:
-
将 =="0" 更改为 equals("0"),在 Java 中,字符串以不同的方式工作,并且大多数时候 == 运算符不起作用。
-
注意到先生。它奏效了。
标签: java android google-maps polyline