如何在不同的位置显示Toast

3

我的地图活动显示了很多覆盖层,当我点击覆盖层图标时,弹出的 toast 显示在屏幕底部。但是我希望将 Toast 显示在我点击的覆盖层图标附近。


可能是如何在Android中更改Toast的位置?的重复问题。 - Graham Borland
2个回答

5
这段代码给出了Toast的准确位置和重力。
OverlayItem item = overlayItems_.get(index);
Projection projection = mMapView.getProjection();
    Point point = new Point();
    projection.toPixels(item.getPoint(), point);
    Toast toast = Toast.makeText(mContext, item.getTitle()+" "+item.getSnippet(), Toast.LENGTH_SHORT);
    toast.setGravity(Gravity.TOP | Gravity.LEFT, point.x, point.y);
    toast.show();

我这里也传递了点数。

0
toast.setGravity(Gravity.TOP, 0, 0);

你可以使用LEFTRIGHT代替Gravity.TOP。


谢谢你的帮助,但是这个解决方案只给了左、右、上、下的Toast重力,但我需要根据我点击覆盖图标的位置来设置Toast重力。现在终于找到了解决方案。 - Vishesh Chandra

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接