2015-10-05 204 views
1

更新:Thx为答案,问题已解决。 是代码丢失,我正在使用Mapsforge库。如何以编程方式在圆上动态更改颜色

它没有任何事情比在sqlite查找 导致没有调用toggleColor()的坏比较。现在它工作得很好!

嗨我无法改变在画布上绘制的圆的颜色。另一种颜色表示圆的不同状态。

它,当我点击屏幕上的圆圈正常工作带有OnTap即,但是当我尝试这样做编程像 circle.toggleColor(),然后 circle.requestRedraw()什么也不会发生。

如何以编程方式使此工作?

@Override 
public boolean onTap(LatLong geoPoint, Point viewPosition, Point tapPoint) { 
     if (this.contains(viewPosition, tapPoint)) { 
       toggleColor(); 
       this.requestRedraw(); 
       return true; 
     } 
     return false; 
} 
@Override 


private void toggleColor() { 
     if (this.getPaintFill().equals(LongPressAction.GREEN)) { 
       this.setPaintFill(LongPressAction.RED); 
     } else { 
       this.setPaintFill(LongPressAction.GREEN); 
     } 
} 
+0

'requestRedraw'在SDK的任何一个类中都没有这样的方法 – pskink

+0

您应该在这里粘贴与您的问题相关的所有代码。否则很难找到原因。 – starkshang

回答

0

THX回答

是代码的片段缺失,我使用Mapsforge库。

它与其他任何事情都没有关系,而不是在sqlite查询中导致没有调用toggleColor()的错误比较。花太多的时间去追逐那个愚蠢的错误......

现在它工作得很好!

相关问题