当点击infoWindow时,我会传递相同的' currentStall'每次点击。 它必须只创建单击侦听器的一个实例。 ' currentStall'将唯一标识符传递给单击的位置,但仅传递数组中的最后一个,而不是每个单独的标识符。
$client = static::createClient();
$crawler = $client->request('GET', '/demo/create/');
$button = $crawler->selectButton('Create Button');
var_dump($button);
答案 0 :(得分:0)
Google地图setOnInfoWindowClickListener()
方法会替换OnInfoWindowClickListener
,因此您所看到的是正确的行为。
要将每个Marker
与相应的Stall
相关联,您可以使用在HashMap
循环之外声明的while
:
HashMap<Marker, Stall> stallLookup = new HashMap<Marker, Stall>();
然后,您可以在设置cmumarker
之后在循环中填充它:
stallLookup.put(cmumarker, currentStall);
然后在OnInfoWindowClickListener
中,您只需在地图中查找Stall
:
Stall currentStall = stallLookup.get(cmumarker);