Tag: swift

如何在GMSMapView中获取animation折线路线,以便在地图移动时与地图一起移动?

我已经通过下面的代码创build了像CAShapeLayer这样的animation折线,我已经将CAShapeLayer作为子图层添加到GMSMapiew中,但是如果我移动地图,图层将不会移动。 在哪里添加图层,让它随着地图一起移动? func layer(from path: GMSPath) -> CAShapeLayer { let breizerPath = UIBezierPath() let firstCoordinate: CLLocationCoordinate2D = path.coordinate(at: 0) breizerPath.move(to: self.mapView.projection.point(for: firstCoordinate)) for i in 1 ..< Int((path.count())){ print(path.coordinate(at: UInt(i))) let coordinate: CLLocationCoordinate2D = path.coordinate(at: UInt(i)) breizerPath.addLine(to: self.mapView.projection.point(for: coordinate)) } let shapeLayer = CAShapeLayer() shapeLayer.path = breizerPath.reversing().cgPath shapeLayer.strokeColor = UIColor.green.cgColor shapeLayer.lineWidth = 4.0 shapeLayer.fillColor = […]

NSUserDefaultsDidChangeNotification和Today Extensions

我正在开发一个带有Today Extension的iPhone应用程序。 该应用程序有一个模型模块,从/加载到NSUserDefaults。 由于我希望这个信息可以被主应用程序和扩展使用,我使用一个应用程序组: let storage = NSUserDefaults(suiteName: "group.etc.etc.etc…") 应用程序和扩展程序都可以访问信息,没有任何问题。 主应用程序偶尔会创build一个本地通知来呈现给用户。 该通知有两个与之相关的操作(UIUserNotificationAction)。 其中一个动作触发主应用程序的背景上运行一些代码。 该代码更改NSUserDefaults信息并触发同步。 我的代码是这样的: func application(application: UIApplication, handleActionWithIdentifier id: String?, forLocalNotification not: UILocalNotification, completionHandler: () -> ()) { // Interact with model here // New information gets saved to NSUserDefaults userDefaultsStorage.synchronize() completionHandler() } 现在,在今天分机。 我自然地观察到对NSUserDefaults上的信息所做的任何更改,以便我可以重新加载小部件上的接口: override func viewDidLoad() { super.viewDidLoad() // … NSNotificationCenter.defaultCenter().addObserverForName(NSUserDefaultsDidChangeNotification, object: […]

带遮罩层的UIVisualEffectView

我想模糊一个MKMapView,同时还显示一个圆形的面具上面。 为了更好地展示我的意思,你可以find我现在状态的图像: 这几乎显示了我想要的东西,但背景(地图)应该模糊,而不是在这张图片中的情况。 我试图与UIVisualEffectView工作,但似乎我在那里做错了。 这是我试过的: func createOverlay(at: CGPoint) { var blur: UIView! blur = UIVisualEffectView (effect: UIBlurEffect (style: UIBlurEffectStyle.dark)) blur.frame = self.mapView.frame blur.isUserInteractionEnabled = false self.mapView.addSubview(blur) let circleSize: CGFloat = 200 let path = UIBezierPath ( roundedRect: blur.frame, cornerRadius: 0) let circle = UIBezierPath ( roundedRect: CGRect (origin: CGPoint(x:at.x – circleSize/2, y: at.y-circleSize/2), size: CGSize […]

错误:UITableView跳到UITableViewAutomaticDimension顶部

我正在使用UITableView与estimatedRowHeight和UITableViewAutomaticDimension 。 另外我正在使用NSFetchedResultsControllerDelegate来反映更改。 一切都很好。 现在的问题是,当我添加一些logging到CoreData , CoreData调用它的委托,但一个意想不到的事情发生。 每次TableView突然滚动到顶部。 NSFetchedResultsControllerDelegate func controllerWillChangeContent(controller: NSFetchedResultsController) { tableView.beginUpdates() } func controllerDidChangeContent(controller: NSFetchedResultsController) { tableView.endUpdates() } func controller(controller: NSFetchedResultsController, didChangeObject anObject: AnyObject, atIndexPath indexPath: NSIndexPath?, forChangeType type: NSFetchedResultsChangeType, newIndexPath: NSIndexPath?) { switch type { case .Insert: tableView.insertRowsAtIndexPaths([newIndexPath!], withRowAnimation: .None) break case .Update: tableView.reloadRowsAtIndexPaths([indexPath!], withRowAnimation: .None) break case .Delete: tableView.deleteRowsAtIndexPaths([indexPath!], withRowAnimation: […]

Int和Int32在Swift上有什么区别?

在Core Data你可以存储Int16 , Int32 , Int64但它不同于Int 。 他们存在的原因是什么,你如何使用它们?

虽然使用ios 8模拟器的邮件发送过程会产生错误

当我使用iphone 5s的模拟器,这种错误出现在邮件发送和完美运行在ios 7模拟器。 它甚至不显示发送选项,只有在打开邮件发送页面时出现取消选项。 我应该怎么做才能解决它请帮助我。 先谢谢你 错误:- (Cocoa error 4097.)“(连接到名为com.apple.uikit.viewservice.com.apple.MailCompositionService的服务){NSDebugDescription =”错误域错误= NSCocoaErrorDomain Code = 4097“连接到名为com.apple.uikit.viewservice.com.apple.MailCompositionService}的服务 viewServiceDidTerminateWithError:'Error Domain = _UIViewServiceInterfaceErrorDomain Code = 3“操作无法完成(_UIViewServiceInterfaceErrorDomain错误3.)”{消息=服务连接中断}“

使用Swift for iOS以编程方式创build和存储PDF文档

我有一个应用程序,可以查看已经存储在项目中的PDF。 我希望能够创build一个新的PDF文档,并将其存储在应用程序目录中,以便在现有的查看器中查看。 PDF将从数组var todoList: [String] = []显示在UITableView上创build。 我知道要创build一个PDF,我必须创build一个文件名,path和目录。 我不知道该怎么做 我看到了URL和URL请求的在线引用,但我不确定这是否是我想要的正确途径。 有人能给我一些build议和指导吗? 我能find的所有东西都是Objective-C。

计算总旅行距离iOS Swift

如何计算在Swift中使用CoreLocation的总距离 我还没有能够find任何资源如何在iOS 8的Swift中做到这一点, 你将如何计算自开始跟踪你的位置以来移动的总距离? 从我读到目前为止,我需要保存点的位置,然后计算当前点和最后一点之间的距离,然后将该距离添加到totalDistancevariables Objective-C对我来说是非常陌生的,所以我一直无法制定出快速的语法 这是我到目前为止所做的,不知道我是否做对了。 虽然distanceFromLocation方法返回全部0.0,所以显然有些问题 func locationManager(manager: CLLocationManager!, didUpdateLocations locations: [AnyObject]!) { var newLocation: CLLocation = locations[0] as CLLocation oldLocationArray.append(newLocation) var totalDistance = CLLocationDistance() var oldLocation = oldLocationArray.last var distanceTraveled = newLocation.distanceFromLocation(oldLocation) totalDistance += distanceTraveled println(distanceTraveled) }

在ios Swift中获取所有联系人?

我知道的ios swift有一个联系人框架 ,我可以获取联系人,但我找不到任何方法来获取所有的联系人,我可以访问该数组中的每个联系人。 提取联系人的所有方法似乎都需要某种条件。 有什么方法可以把所有的联系人联系起来吗? 谢谢

在Swift 2中获取SSID

我试图使用这个代码来获取SSID import Foundation import SystemConfiguration.CaptiveNetwork public class SSID { class func getSSID() -> String{ var currentSSID = "" let interfaces = CNCopySupportedInterfaces() if interfaces != nil { let interfacesArray = interfaces.takeRetainedValue() as [String : AnyObject] if interfacesArray.count > 0 { let interfaceName = interfacesArray[0] as String let unsafeInterfaceData = CNCopyCurrentNetworkInfo(interfaceName) if unsafeInterfaceData != nil { […]