- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 UIKit 设置 map ,使用 SF 符号作为注释。到现在为止还挺好。
问题是符号是黑色的,我想将颜色更改为白色。
annotationView.image = UIImage(systemName: "23.circle.fill")!.withTintColor(.white, renderingMode: .alwaysTemplate)
import SwiftUI
import MapKit
import UIKit
struct MapView: UIViewRepresentable {
func makeUIView(context: Context) -> MKMapView {
let myMapView = MKMapView(frame: .zero)
return myMapView
}
func updateUIView(_ view: MKMapView, context: Context) {
let coordinate = CLLocationCoordinate2D(latitude: 49.289912, longitude: 19.764172)
let span = MKCoordinateSpan(latitudeDelta: 0.027, longitudeDelta: 0.027)
let region = MKCoordinateRegion(center: coordinate, span: span)
view.setRegion(region, animated: true)
view.mapType = MKMapType.hybrid
view.delegate = context.coordinator
let Stand = Staende()
for x in 1...47 {
view.addAnnotation(Stand.mitDerNummer(x))
}
}
func makeCoordinator() -> MapViewCoordinator{
MapViewCoordinator(self)
}
}
// Just the location of annotations
class Staende {
var Standname: [Int: [CLLocationDegrees]] = [0: [49.289912, 11.764172],
1: [49.286350, 11.752594], 2: [49.285030, 11.756457], 3: [49.285660, 11.760449], 4: [49.288375, 11.756384],
5: [49.282156, 11.756804], 6: [49.282291, 11.759722], 7: [49.283888, 11.763349], 8: [49.296440, 11.769589],
9: [49.283813, 11.766361], 10: [49.282745, 11.767006], 11: [49.281876, 11.769693], 12: [49.285313, 11.770928],
13: [48.282069, 11.771333], 14: [49.285064, 11.773408], 15: [49.287436, 11.772958], 16: [49.287954, 11.771348],
17: [48.289525, 11.772810], 18: [49.290832, 11.771648], 19: [49.283636, 11.773671], 20: [49.292861, 11.773709],
21: [49.284230, 11.758675], 22: [49.297040, 11.775138], 23: [49.298002, 11.775465], 24: [49.294852, 11.774368],
25: [49.292690, 11.771520], 26: [49.287850, 11.754731], 27: [49.299254, 11.774461], 28: [49.284187, 11.753743],
29: [49.294497, 11.766336], 30: [49.293562, 11.766357], 31: [49.292035, 11.765755], 32: [49.294161, 11.763869],
33: [49.293591, 11.761708], 34: [49.292360, 11.763438], 35: [49.291680, 11.763557], 36: [49.290670, 11.762457],
37: [49.289053, 11.765481], 38: [49.289864, 11.769767], 39: [49.295175, 11.764827], 40: [49.288745, 11.760020],
41: [49.288123, 11.760888], 42: [49.288417, 11.762843], 43: [49.287116, 11.762057], 44: [49.286426, 11.757369],
45: [49.286686, 11.765102], 46: [49.287328, 11.767133], 47: [49.279872, 11.758877], 48: [0, 0],
49: [0, 0], 50: [0, 0]
]
func mitDerNummer(_ standNummer: Int) -> MKPointAnnotation {
let Stand = MKPointAnnotation()
Stand.title = "Stand \(standNummer)"
let latitude = Standname[standNummer]![0]
let longitude = Standname[standNummer]![1]
Stand.coordinate = CLLocationCoordinate2D(latitude: latitude, longitude: longitude)
return Stand
}
}
class MapViewCoordinator: NSObject, MKMapViewDelegate {
var mapViewController: MapView
let Stand = Staende()
init(_ control: MapView) {
self.mapViewController = control
}
func mapView(_ mapView: MKMapView, viewFor
annotation: MKAnnotation) -> MKAnnotationView?{
//Custom View for Annotation
let annotationView = MKAnnotationView(annotation: annotation, reuseIdentifier: "customView")
annotationView.canShowCallout = true
//Your custom image icon
for (standNummer, _) in Stand.Standname {
if annotation.title == "Stand \(standNummer)" {
annotationView.image = UIImage(systemName: "\(standNummer).circle")!.withTintColor(.red, renderingMode: .alwaysTemplate)
}
}
return annotationView
}
}
extension UIImage {
func colorized(color : UIColor) -> UIImage {
let rect = CGRect(x: 0, y: 0, width: self.size.width, height: self.size.height)
UIGraphicsBeginImageContextWithOptions(rect.size, false, 0.0)
if let context = UIGraphicsGetCurrentContext() {
context.setBlendMode(.multiply)
context.translateBy(x: 0, y: self.size.height)
context.scaleBy(x: 1.0, y: -1.0)
context.draw(self.cgImage!, in: rect)
context.clip(to: rect, mask: self.cgImage!)
context.setFillColor(color.cgColor)
context.fill(rect)
}
let colorizedImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return colorizedImage!
}
}
最佳答案
这对我有用(根据需要调整 size
):
let circle = UIImage(systemName:"23.circle.fill")!.withTintColor(.white)
let size = CGSize(width: 40, height: 40)
v.image = UIGraphicsImageRenderer(size:size).image {
_ in circle.draw(in:CGRect(origin:.zero, size:size))
}
关于swift - map 中的 SF 符号不会应用颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58560959/
有没有办法在 .swift 文件(编译成 .swift 模块)中声明函数,如下所示: 你好.swift func hello_world() { println("hello world")
我正在尝试使用 xmpp_messenger_ios 和 XMPPFramework 在 iOS 上执行 MUC 这是加入房间的代码。 func createOrJoinRoomOnXMPP()
我想在我的应用程序上创建一个 3D Touch 快捷方式,我已经完成了有关快捷方式本身的所有操作,它显示正确,带有文本和图标。 当我运行这个快捷方式时,我的应用程序崩溃了,因为 AppDelegate
我的代码如下: let assetTag = Expression("asset_tag") let query2 = mdm.select(mdm[assetTag],os, mac, lastRe
我的 swift 代码如下所示 Family.arrayTuple:[(String,String)]? = [] Family.arrayTupleStorage:String? Family.ar
这是我的 JSON,当我读取 ord 和 uniq 数据时出现错误 let response2 : [String: Any] = ["Response":["status":"SUCCESS","
我想将 swift 扩展文件移动到 swift 包中。但是,将文件移动到 swift 包后,我遇到了这种错误: "Type 'NSAttributedString' has no member 'ma
使用CocoaPods,我们可以设置以下配置: pod 'SourceModel', :configurations => ['Debug'] 有什么方法可以用 Swift Package Manag
我正在 Xcode 中开发一个 swift 项目。我将其称为主要项目。我大部分都在工作。我在日期选择器、日期范围和日期数学方面遇到了麻烦,因此我开始了另一个名为 StarEndDate 的项目,其中只
这是 ObjectiveC 代码: CCSprite *progress = [CCSprite spriteWithImageNamed:@"progress.png"]; mProgressBar
我正在创建一个命令行工具,在 Xcode 中使用 Swift。我想使用一个类似于 grunt 的配置文件确实如此,但我希望它是像 Swift 包管理器的 package.swift 文件那样的快速代码
我假设这意味着使用系统上安装的任何 swift 运行脚本:#!/usr/bin/swift 如何指定脚本适用的解释器版本? 最佳答案 Cato可用于此: #!/usr/bin/env cato 1.2
代码说完全没问题,没有错误,但是当我去运行模拟器的时候,会出现这样的字样: (Swift.LazyMapCollection (_base:[ ] 我正在尝试创建一个显示报价的报价应用。 这是导入
是否可以在运行 Swift(例如 Perfect、Vapor、Kitura 等)的服务器上使用 RealmSwift 并使用它来存储数据? (我正在考虑尝试将其作为另一种解决方案的替代方案,例如 no
我刚开始学习编程,正在尝试完成 Swift 编程书中的实验。 它要求““编写一个函数,通过比较两个 Rank 值的原始值来比较它们。” enum Rank: Int { case Ace = 1 ca
在您将此问题标记为重复之前,我检查了 this question 它对我不起作用。 如何修复这个错误: error: SWIFT_VERSION '5.0' is unsupported, suppo
从 Xcode 9.3 开始,我在我的模型中使用“Swift.ImplicitlyUnwrappedOptional.some”包裹了我的字符串变量 我不知道这是怎么发生的,但它毁了我的应用程序! 我
这个问题在这里已经有了答案: How to include .swift file from other .swift file in an immediate mode? (2 个答案) 关闭 6
我正在使用 Swift Package Manager 创建一个应用程序,我需要知道构建项目的配置,即 Debug 或 Release。我试图避免使用 .xcodeproj 文件。请有人让我知道这是否
有一个带有函数定义的文件bar.swift: func bar() { println("bar") } 以及一个以立即模式运行的脚本foo.swift: #!/usr/bin/xcrun s
我是一名优秀的程序员,十分优秀!