首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从GLYMapView中删除过期的票证注释

如何从GLYMapView中删除过期的票证注释
EN

Stack Overflow用户
提问于 2013-06-07 06:26:04
回答 1查看 169关注 0票数 0

我一直在尝试使用GLYMapModeBase中的这个方法从GLYMapView中删除一个票据注释:

代码语言:javascript
复制
- (void)ticketRemoved:(const Glympse::GTicket&)ticket;

但是我失败了,因为在ticketRemoved方法中,我的mapUser总是空的:

代码语言:javascript
复制
Glympse::GMapUser mapUser = ticket->getContext(GLYMapUserContext);
if ( mapUser == NULL )
{
    return;
}

如果此方法是移除批注的正确方法,那么如何在GTicket中设置GMapUser?我已经查看了文档,但没有找到可用的函数。

EN

回答 1

Stack Overflow用户

发布于 2013-06-08 00:54:19

有几种方法可以解决这个问题。

  1. 您可以提供您自己的GLYMapMode实现,类似于GLYWorldView,但忽略过期的票证。如果您不需要跟踪过期的票证(传入的),您可以在过期后立即将其从系统中删除,您需要将Glympse::GE::TICKET_EXPIRED事件(针对传入的票证)连接到GLYMapModeBase ticketRemoved:.
  2. In case。这里的模式类似于上面提出的模式,但它可以在不对map组件进行任何更改的情况下完成。您需要收听所有活动票证广播的事件(GLYWorldView提供了一个很好的示例来说明如何实现这一点)。一旦票证过期,您可以通过调用IUser::stopWatching()来停止监视用户(假设没有来自该用户的其他活动票证)。这将反过来从地图中删除用户。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16973257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档