Я разрабатываю приложение с использованием Xamarin.iOS и Mapbox iOS SDK (пакет NuGet Naxam.Mapbox.iOS здесь. И я следую этому примеру на веб-сайте MapBox iOS SDK: https://docs.mapbox.com/ios/maps/examples/clustering/.
И у меня проблемы с преобразованием этой части кода в C #:
// Color clustered features based on clustered point counts.
let stops = [
20: UIColor.lightGray,
50: UIColor.orange,
100: UIColor.red,
200: UIColor.purple
]
А также:
circlesLayer.circleColor = NSExpression(format: "mgl_step:from:stops:(point_count, %@, %@)", UIColor.lightGray, stops)
Я могу установить уникальный цвет для кластера, если сделаю это так:
circlesLayer.CircleColor = NSExpression.FromConstant(FromObject(UIColor.Green));
Но мне не удается это сделать, если я следую примеру, в нем формат выражения принимает 3 параметра: строка, UiColor, массив strong >
Но в C # NSExpression.FromConstant
принимает максимум 2 параметра: строка и NSObject [], поэтому я создал это: (чтобы соответствовать массиву "стопов" в примере)
NSDictionary[] stops = new NSDictionary[]
{
new NSDictionary(new NSNumber(0), FromObject(UIColor.Green)),
new NSDictionary(new NSNumber(20), FromObject(UIColor.Blue)),
new NSDictionary(new NSNumber(100), FromObject(UIColor.Red))
};
Но это безуспешно, что мне делать вместо этого?