【问题标题】:Change Polyline Color Conditionally有条件地更改折线颜色
【发布时间】:2016-12-12 08:58:36
【问题描述】:
- (void)loadView {

// Create a GMSCameraPosition that tells the map to display the
// coordinate -33.86,151.20 at zoom level 6.
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:37.551927
                                                        longitude:-77.456292
                                                             zoom:18];
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera];
CLLocationCoordinate2D position = CLLocationCoordinate2DMake(37.551709, -77.456510);
GMSMarker *marker = [GMSMarker markerWithPosition:position];
marker.title = @"Hi";
marker.map = mapView;
mapView.settings.myLocationButton = YES;
mapView.myLocationEnabled = YES;
self.view = mapView;

GMSMutablePath *path = [GMSMutablePath path];
[path addCoordinate:CLLocationCoordinate2DMake(37.552243, -77.457415)];
[path addCoordinate:CLLocationCoordinate2DMake(37.551054, -77.455443)];

GMSPolyline *polyline = [GMSPolyline polylineWithPath:path];
int x = 0;
if ((x = 1)){
    polyline.spans = @[[GMSStyleSpan spanWithColor:[UIColor redColor]]];
}
else polyline.spans = @[[GMSStyleSpan spanWithColor:[UIColor greenColor]]];
polyline.strokeWidth = 10.f;
polyline.map = mapView;}

我正在尝试根据条件更改此折线的颜色。我是 XCode 的新手,所以我只是尝试了一个 if 语句,但由于某种原因它不起作用。任何想法,将不胜感激!

【问题讨论】:

    标签: ios google-maps google-polyline


    【解决方案1】:

    您混合了赋值和比较运算符。

    = -> 分配新值
    == -> 检查左右手值是否相等

    不幸的是,它仍然是一个有效的“条件”语句,尽管它意味着不同的东西。

    if (x = 1) -> 如果分配成功(即x 中的值被认为是true
    if (x == 1) -> 如果x 等于1

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-14
      相关资源
      最近更新 更多