每次删除功能时我都会尝试刷新地图但没有成功。 我已经阅读了map.render()和map.renderSync()方法,你可以做到但我还没有找到任何例子。
有人能告诉我如何使用它们只刷新地图而不刷新整个页面吗?或者,如果还有其他方法可以做到这一点?
非常感谢你!
答案 0 :(得分:0)
我在http://www.codeitive.com/0SmVVPVVPj/ol3-force-redraw-layer.html找到了这个很好的解决方法:
- (void)buttonAction:(id)sender {
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"save"];
}
- (void)viewDidLoad {
BOOL hasSaved = [[NSUserDefaults standardUserDefaults] boolForKey:@"save"];
if (hasSaved) {
// You can hide your button here if that's what you're going for
[yourButton setHidden:YES]
}
}
答案 1 :(得分:0)
我也尝试使用map.render()和map.renderSync(),但它没有预期的效果。在这里,我给你一些提示,就像刷新地图一样。
在下面的代码中我稍微移动了地图的视图中心。这在视觉上不影响克林特方面。
//After performing your desire action like change VectorLayer style... use below code for refresh map.
var mapCenter = map.getView().getCenter(); //Get map's view center
var newCenter = [mapCenter[0] - 0.001, mapCenter[1] - 0.001]; //move slightly
map.getView().setCenter(newCenter);//Set map's view center