javascript

java

python

c#

android

c++

node.js

php

html

jquery

ios

reactjs

css

.net

git

ruby-on-rails

sql

c

ruby

string

ios-Swift 3核心数据删除对象

不幸的是,新的Core Data语义使我发疯。 我之前的问题有一个干净的代码,因为头文件的自动生成不正确,所以代码无法正常工作。 现在,我继续删除对象的工作。我的代码似乎很简单:

func deleteProfile(withID: Int) {
    let fetchRequest: NSFetchRequest<Profile> = Profile.fetchRequest()
    fetchRequest.predicate = Predicate.init(format: "profileID==\(withID)")
    let object = try! context.fetch(fetchRequest)
    context.delete(object)
} 

我用deleteObject而不是public func delete(_ sender: AnyObject?)进行了“硬”调试,它向我显示了正确的对象。所以我只需要删除它。

附言 没有deleteObject。现在NSManagedContext只有public func delete(_ sender: AnyObject?)

trans by 2020-02-15T19:25:55Z

swift3-困难转换为Swift 3

从Swift 2转换为Swift 3后(即使在将edit-> convert->转换为当前的swift语法之后),我也遇到了很多错误。 特别:

this

在我下载此Beta Xcode 8.0并将其转换为Swift 3之前,向我显示了总计90个错误,该项目在Swift 2中运行正常

这是我犯的转换错误吗?

trans by 2020-02-10T19:52:03Z

swift3-检查互联网连接(iOS 10)

对于iOS 9,我使用了可达性公共类来检查设备是否连接到互联网。 我将我的Swift 2代码转换为Swift 3,并且可达性不再起作用。 有人可以告诉我如何在iOS 10上检查互联网连接吗? 谢谢!这是代码片段:

open class Reachability {
    class func isConnectedToNetwork() -> Bool {
        var zeroAddress = sockaddr_in()
        zeroAddress.sin_len = UInt8(MemoryLayout.size(ofValue: zeroAddress))
        zeroAddress.sin_family = sa_family_t(AF_INET)
        let defaultRouteReachability = withUnsafePointer(to: &zeroAddress) {
            SCNetworkReachabilityCreateWithAddress(nil, UnsafePointer($0))
        }
        var flags = SCNetworkReachabilityFlags()
        if !SCNetworkReachabilityGetFlags(defaultRouteReachability!, &flags) {
            return false
        }
        let isReachable = (flags.rawValue & UInt32(kSCNetworkFlagsReachable)) != 0
        let needsConnection = (flags.rawValue & UInt32(kSCNetworkFlagsConnectionRequired)) != 0
        return (isReachable && !needsConnection)
    }
}
trans by 2020-02-07T03:31:19Z

大中央调度-在Swift 3中Whither dispatch_once吗?

好的,所以我发现了Xcode 8中新的Swifty Dispatch API。我在使用DispatchQueue.main.async时很有趣,而且我一直在Xcode的dispatch_once模块中浏览以找到所有新的API。

但是我还使用dispatch_once来确保单例创建和一次性设置之类的事情不会多次执行(即使在多线程环境中)...而在新的Dispatch模块中找不到dispatch_once吗?

static var token: dispatch_once_t = 0
func whatDoYouHear() {
    print("All of this has happened before, and all of it will happen again.")
    dispatch_once(&token) {
        print("Except this part.")
    }
}
trans by 2020-02-05T18:58:46Z

ios-闭包不能隐式捕获变异的自我参数

我正在使用Firebase观察事件,然后在完成处理程序中设置图像

FirebaseRef.observeSingleEvent(of: .value, with: { (snapshot) in
        if let _ = snapshot.value as? NSNull {
            self.img = UIImage(named:"Some-image")!
        } else {
            self.img = UIImage(named: "some-other-image")!
        }
})

但是我收到此错误

闭包不能隐式捕获变异的自身参数

我不确定这个错误是什么,寻找解决方案并没有帮助

trans by 2020-02-03T18:44:15Z

ios-无法从障壁加载Info.plist

无法运行应用。 无法从捆绑软件加载Info.plist,发生错误。当我CMD+K清理项目时,它运行正常。 但是,每次更改并运行应用程序时,我都必须清理项目。

enter image description here

以下是我的podfile的屏幕截图:enter image description here

trans by 2020-02-02T09:41:48Z

ios-Xcode 8中的奇怪终端消息

最近,我将我的Xcode版本更新为8。当我启动并运行一个全新的项目时,我在终端中收到以下消息。

2016-09-07 15:28:43.759998 App[7932:128675] subsystem: com.apple.UIKit,     
category: HIDEventFiltered, enable_level: 0, persist_level: 0, 
default_ttl:     0, info_ttl: 0, debug_ttl: 0, generate_symptoms: 0,
enable_oversize: 1,   privacy_setting: 2, enable_private_data: 0
2016-09-07 15:28:43.762544 App[7932:128675] subsystem: com.apple.UIKit,     
category: HIDEventIncoming, enable_level: 0, persist_level: 0, 
default_ttl: 0, info_ttl: 0, debug_ttl: 0, generate_symptoms: 0,    
enable_oversize: 1, privacy_setting: 2, enable_private_data: 0
2016-09-07 15:28:43.790817 App[7932:128648] subsystem:   
com.apple.BaseBoard, category: MachPort, enable_level: 1,   
persist_level: 0, default_ttl: 0, info_ttl: 0, debug_ttl: 0, 
generate_symptoms: 0, enable_oversize: 0, privacy_setting: 0,  
enable_private_data: 0
2016-09-07 15:28:43.827962 App[7932:128496] subsystem: com.apple.UIKit,   
category: StatusBar, enable_level: 0, persist_level: 0, default_ttl: 0, 
info_ttl: 0, debug_ttl: 0, generate_symptoms: 0, enable_oversize: 1, 
privacy_setting: 2, enable_private_data: 0
2016-09-07 15:28:43.998975 App[7932:128496] subsystem: 
com.apple.BackBoardServices.fence, category: App, enable_level: 1, 
persist_level: 0, default_ttl: 0, info_ttl: 0, debug_ttl: 0, 
generate_symptoms: 0, enable_oversize: 0, privacy_setting: 0,    
enable_private_data: 0

谁能解释这些意思/为什么在这里?

PS:我从未使用Xcode 7收到过这类消息。

trans by 2020-01-28T09:12:35Z

ios-Swift 3.0的选择器语法

这个问题已经在这里有了答案:

  • 添加UIButton目标时“类名没有成员函数名”                                     4个答案

我试图以这种方式将目标添加到按钮:

btnAll.addTarget(self, action: #selector(buttonTapped(_:)), for: .touchUpInside)

但这给了我一个错误:

使用未解决的标识符“ buttonTapped”

但是我声明了如下功能:

func buttonTapped(sender: UIButton) {

    print("All Tapped")
}

谁能告诉我迅速进行此操作的正确方法是什么?

trans by 2020-01-21T19:30:28Z

xcode-难以置信的编译时间

我的项目包含约350个Swift文件和约40个可可豆依赖项。

整个项目迁移到Xcode 8之后,构建时间就变得非常慢,完全编译花费了3分钟多的时间。
我注意到,如果在不更改任何文件的情况下进行重建,则它会在合理的时间内构建。 但是,如果添加新功能,则需要3分钟以上的时间。
Cocoapods似乎没有引起此问题,因为它在Swift 3状态上有所延迟。

我按照此进行调查:

  1. 在目标的构建设置中将Xcode 8标志添加到了Swift 3

  2. 建立项目

  3. enter image description here

  4. enter image description here

  5. 将其复制到终端并运行Xcode 8

但是,我没有发现任何问题。 编译时间最长的文件只有250ms。 下一个最接近的时间是100毫秒,即使所有350个文件花费了250毫秒来编译,也总共只有73秒钟,与我看到的3分钟以上的构建相去甚远。


是什么原因导致这么长的编译时间?

在更新到Xcode 8Swift 3之前,它从未如此慢。

trans by 2020-01-19T06:42:45Z

ios-自动代码中的无效重新声明会生成NSManagedObject子类Swift 3

使用Xcode版本8.1。

在.xcdatamodeld文件中创建一个名为“ MapRegionObject”的实体。enter image description here

使用自动代码生成器,单击导航栏上的编辑器->创建NSManagedOject子类...

得到了两个文件:MapRegionObject + CoreDataClass.swift和MapRegionObject + CoreDataProperties

屏幕快照中显示的两个文件中的错误:MapRegionObject + CoreDataClass.swiftenter image description here

MapRegionObject + CoreDataPropertiesenter image description here

请帮助我修复此错误,非常感谢!

trans by 2020-01-18T13:28:43Z

ios-Swift 3:从“ UIView”隐式强制表达式 去任何

将iOS项目转换为Swift 3时(或之后),肯定有人收到了此消息,但是当我执行Google搜索时,没有任何相关结果。

无论如何,转换为Swift 3后,我会收到约30条警告,内容如下:

表达式从“ UIView”隐式强制转换 去任何

但是警告并不指向任何特定的代码行。 他们仅引用警告所在的类。
是否有人对此警告有深刻的了解,或者我可能会如何静默它们?

trans by 2020-01-17T20:41:30Z

ios-在Swift 3中更改状态栏背景颜色

在XCode 7.3.x中,我用以下方法更改了StatusBar的背景颜色:

func setStatusBarBackgroundColor(color: UIColor) {
guard  let statusBar = UIApplication.sharedApplication().valueForKey("statusBarWindow")?.valueForKey("statusBar") as? UIView else {
    return
}
statusBar.backgroundColor = color
}

但是似乎这在Swift 3.0中不再起作用。

病态尝试:

func setStatusBarBackgroundColor(color: UIColor) {
guard  let statusBar = (UIApplication.shared.value(forKey: "statusBarWindow") as AnyObject).value(forKey: "statusBar") as? UIView else {
    return
}
statusBar.backgroundColor = color
}

但这给了我:

this class is not key value coding-compliant for the key statusBar.

有任何想法如何使用XCode 8 / Swift 3.0进行更改吗?

trans by 2020-01-15T21:15:57Z

swift-用动画交换rootViewController吗?

我试图用标签栏交换到另一个根视图控制器; 通过应用程序委托,我想添加过渡动画。 默认情况下,它将仅显示视图而没有任何动画。

let tabBar = self.instantiateViewController(storyBoard: "Main", viewControllerID: "MainTabbar")
let appDelegate = UIApplication.shared.delegate as! AppDelegate
appDelegate.window = UIWindow(frame: UIScreen.main.bounds)
appDelegate.window?.rootViewController = tabBar
appDelegate.window?.makeKeyAndVisible()

这就是我交换到另一个rootview控制器的方式。

trans by 2020-01-13T17:30:54Z

iOS-Swift-3错误:'-[_ SwiftValue unsignedIntegerValue]:无法识别

下面的代码与旧的swift完美结合。 这是String的扩展

func stringByConvertingHTML() -> String {
    let newString = replacingOccurrences(of: "\n", with: "<br>")
    if let encodedData = newString.data(using: String.Encoding.utf8) {
        let attributedOptions : [String: AnyObject] = [
            NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType as AnyObject,
            NSCharacterEncodingDocumentAttribute: String.Encoding.utf8 as AnyObject
        ]
        do {
            let attributedString = try NSAttributedString(data: encodedData, options: attributedOptions, documentAttributes: nil) //Crash here
            return attributedString.string
        } catch {
            return self
        }
    }
    return self
}

但是在迅速3它崩溃说

***由于未捕获的异常而终止应用程序   “ NSInvalidArgumentException”,原因:“-[_ SwiftValue   [unsignedIntegerValue]:无法识别的选择器已发送到实例   0x6080002565f0'

任何人都可以建议我该怎么办?

trans by 2020-01-10T12:26:55Z

ios-在Swift 3中自动将CGRectMake更新为CGRect

现在,在Swift 3.0中已删除了CGRectMake,CGPointMake,CGSizeMake等,现在有任何方法可以自动更新所有初始化,例如从CGRectMake(0,0,w,h) to CGRect(x:0,y:0,width:w,height:h)开始。手动处理非常麻烦。

不知道为什么当我将代码转换为当前的Swift语法时,Apple不会自动转换它吗?

trans by 2020-01-09T18:04:16Z

alamofire-额外的参数“方法”在

在最新版本(4.0.0)中调用Alamofire请求方法时出错。

语法为:

Alamofire.request(urlString,method: .post, parameters: requestParams, encoding: .JSON, headers: [:])

requestParam的类型为[String:Any]

trans by 2020-01-07T22:54:55Z

swift3-Alamofire Swift 3.0中的额外参数

我已将项目迁移到Swift 3(并在Podfile中将Alamofire更新为最新的Swift 3版本,其中包含pod 'Alamofire', '~> 4.0')。

现在,我在每个Alamofire.request上都收到“正在调用的额外参数”错误。 例如:

let patientIdUrl = baseUrl + nextPatientIdUrl
Alamofire.request(.POST, patientIdUrl, parameters: nil, headers: nil, encoding: .JSON)

有人可以告诉我为什么吗?

trans by 2020-01-02T19:53:21Z

ios-删除字符串中的最后两个字符(Swift 3.0)

在Swift 3.0中,有没有一种快速的方法来删除字符串中的最后两个字符? 我看到有一种简单的方法可以删除最后一个字符,如此处明确指出的那样。 您知道如何删除最后两个字符吗? 谢谢!

trans by 2020-01-02T15:32:55Z

ios-Swift闭包中的$ 0和$ 1是什么意思?

let sortedNumbers = numbers.sort { $0 > $1 }
print(sortedNumbers)

有人能解释一下,$0$1意味着什么?

更多样品

array.forEach {
    actions.append($0)
}
trans by 2019-12-29T23:09:15Z

nsuserdefaults-使用xcode 8将字典保存在swift 3中的userdefaults中

我正在使用以下代码使用xcode 8将对象保存到UserDefaults(以前是NSUserDefaults):

let defaults = UserDefaults.standard()
defaults.set(someObject, forKey: "someObject")
print(defaults.object(forKey: "someObject"))

someObject是一本字典,我正在模拟器上运行。

由于某些原因,这不会保存该值,并且会打印“ nil”。 想知道这是否是模拟器问题。

trans by 2019-11-12T00:01:08Z

上一页 1 2 3 4 下一页 共4页