小编Ald*_*rdi的帖子

无法读取数据,因为格式不正确[swift 3]

我的json数据有json字符串(值),看起来像这样

{
     "Label" : "NY Home1",
     "Value" : "{\"state\":\"NY\",\"city\":\"NY\",\"postalCode\":\"22002\",\"value\":\"Fifth Avenue1\nNY NY 22002\nUSA\",\"iosIdentifier\":\"71395A78-604F-47BE-BC3C-7F932263D397\",\"street\":\"Fifth Avenue1\",\"country\":\"USA\"}",
}
Run Code Online (Sandbox Code Playgroud)

我使用swiftyjson获取jsonString

let value = sub["Value"].string ?? ""
Run Code Online (Sandbox Code Playgroud)

之后,我将此jsonString转换为Dictionary,使用下面的代码,但它始终显示此错误消息 The data couldn’t be read because it isn’t in the correct format

if let data = value.data(using: String.Encoding.utf8) {
        do {
            let a = try JSONSerialization.jsonObject(with: data, options: []) as? [String: Any]
            print("check \(a)")
        } catch {
            print("ERROR \(error.localizedDescription)")
        }
    }
Run Code Online (Sandbox Code Playgroud)

我认为这是因为"\n",如何将jsonstring转换为具有"\n"的字典?

json nsdictionary ios swift swift3

12
推荐指数
1
解决办法
2万
查看次数

更新/更改数组值(swift)

数据模型

class dataImage {
    var userId: String
    var value: Double
    var photo: UIImage?
    var croppedPhoto: UIImage?

init(userId:String, value: Double, photo: UIImage?, croppedPhoto: UIImage?){
    self.userId = userId
    self.value = value
    self.photo = photo
    self.photo = croppedPhoto
   }

}
Run Code Online (Sandbox Code Playgroud)

查看控制器

var photos = [DKAsset]() //image source
var datas = [dataImage]()

var counter = 0
    for asset in photos{
        asset.fetchOriginalImageWithCompleteBlock({ image, info in // move image from photos to datas

            let images = image
            let data1 = dataImage(userId: "img\(counter+1)", value: 1.0, photo: images, …
Run Code Online (Sandbox Code Playgroud)

arrays datamodel ios swift

8
推荐指数
1
解决办法
3万
查看次数

如何检查CNContact swift中的联系人来源?

在联系人应用程序中,有像"iCloud","yahoo","gmail"这样的组.在swift中,是否可以仅从gmail源获取联系人?

google-contacts-api ios swift cncontact swift3

8
推荐指数
1
解决办法
1333
查看次数

如何在swift3中获取CNLabeledValue的localizedstring

在swift 2中我使用CNLabeledValue.localizedStringForLabel(phoneNumber.label)并且工作正常.

在swift 3中,我尝试了这一行,CNLabeledValue.localizedString(forLabel: phoneNumber.label!)但是遇到了generic parameter 'ValueType' could not be inferred错误

如何在swift3中获取CNLabeledValue的localizedstring?

ios swift cncontact swift3

7
推荐指数
1
解决办法
3134
查看次数

我们可以自己制作CNContainer吗?迅速

在下面这张图片中,谷歌和雅虎可以获得他们自己的CNContainer.

我们可以在这些截图中制作我们自己的CNContainer,如gmail和yahoo吗?如果我能,怎么做?

google-contacts-api ios swift cncontact swift3

7
推荐指数
0
解决办法
256
查看次数

表格视图单元格上的步进器(快速)

我将步进器的出口和操作放入表格视图单元格中,并使用协议委托将其连接到表格视图。当我点击第一行中的步进器时,步进器值在第一行中正常显示,但它也出现在某个随机行中。如何解决这个问题?

表格视图单元格

protocol ReviewCellDelegate{
    func stepperButton(sender: ReviewTableViewCell)
}

class ReviewTableViewCell: UITableViewCell {
   @IBOutlet weak var countStepper: UIStepper!
   @IBOutlet weak var stepperLabel: UILabel!

override func awakeFromNib() {
    super.awakeFromNib()
    // Initialization code
}

override func setSelected(selected: Bool, animated: Bool) {
    super.setSelected(selected, animated: animated)

    // Configure the view for the selected state
}

@IBAction func stepperButtonTapped(sender: UIStepper) {
    if delegate != nil {
        delegate?.stepperButton(self)
        stepperLabel.text = "x \(Int(countStepper.value))"

    }
}
Run Code Online (Sandbox Code Playgroud)

视图控制器

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cellIdentifier = …
Run Code Online (Sandbox Code Playgroud)

uitableview ios uistepper swift

6
推荐指数
1
解决办法
4061
查看次数

如何简单地删除旧核心数据并重建新核心数据?

我尝试将coreData迁移到新版本,我正在执行以下步骤:

如果您已将应用程序提交到使用早期型号版本的App Store,请在进行任何更改之前添加新的模型版本(选择name.xcdatamodeld,然后选择Editor-> Add model Version).

然后,从Core Data选项卡添加新文件,作为映射模型选择,源模型(提交的应用程序正在使用的模型版本)目标模型(您已完成更改的模型版本)

资源

但我的数据主要是图像和应用程序崩溃,因为它需要大量的内存.所以我想删除旧数据模型及其数据,并在用户更新应用程序时创建空的新模型数据.这该怎么做?

core-data core-data-migration ios swift

5
推荐指数
1
解决办法
777
查看次数

iOS 10上的路径似乎没有有效的编译故事板

我一直收到这个错误

由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'路径中似乎没有有效的已编译故事板'/var/containers/Bundle/Application/43F5F727-9B69-404E-A320-22AE93547B73/vContacts.app/ Base.lproj/Main.storyboardc"

当我在iOS 10的设备中使用以下行时.它在iOS 9中运行良好

let mainST = UIStoryboard(name: "Main", bundle: nil)
Run Code Online (Sandbox Code Playgroud)

我已经将目标家庭设备设置为1/2(iPhone和iPad)并清理项目但仍然出现此错误.怎么解决?

xcode uistoryboard uistoryboardsegue swift3 ios10

5
推荐指数
0
解决办法
528
查看次数

检查联系人应用程序中的任何联系人是否已更改(Swift)

现在我构建了一个提供同步联系人的应用程序.为此,每次应用程序回到前台时,我会检查所有联系人(CNContact)并与应用程序核心数据中的联系人进行比较,并检测是否存在任何不同的联系人并合并数据.它工作正常,但需要大量的内存.

有没有办法检测联系人应用程序中的任何联系人是否已更改而不比较所有联系人?

contacts ios swift cncontact swift3

5
推荐指数
0
解决办法
250
查看次数

如何自动滑动/滑动单元格tableviewcell swift 3

当我们触摸按钮时如何自动滑动单元格,如添加联系人?那有代表吗?

当我们点击删除按钮时,单元格会自动滑动

uitableview tableviewcell ios swift

4
推荐指数
1
解决办法
1751
查看次数

如何在应用程序委托中的进程结束之前保持启动画面?

在app委托中我放了一些函数,我希望启动画面等到appdelegate完成其功能.现在,我的应用程序立即运行初始视图控制器func和app委托func.

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    // Override point for customization after application launch.

    let email = NSUserDefaults.standardUserDefaults().stringForKey("userEmail")
    if let email = email {
       reLogin()
    }else{
        buildNavigationDrawer()
    }// I want this execute first and run the initial view controller's after

    return true
}
Run Code Online (Sandbox Code Playgroud)

这该怎么做?或者这是关闭初始视图控制器的方法?

splash-screen ios appdelegate swift

3
推荐指数
1
解决办法
2855
查看次数

Alamofire 不发送当前标头 (swift)

当我使用 alamofire 时,我不断收到“error_type”:“OAuthException”,“code”:“41”,甚至当我通过服务器获得数据时,我在标题授权之前。我认为它不断发送相同的标头,如何确保 alamofire 发送当前标头?

    let headers = ["Authorization" : "\(AccessToken) \(TokenType)"]
    print(headers)

    Alamofire.request(.GET, "url/profile/", headers: headers, encoding: .JSON).responseJSON { response in
        switch response.result {}
Run Code Online (Sandbox Code Playgroud)

编辑 首先,我使用登录 API

    let parameters = [
        "client_id": "\(Constant.clientId)",
        "client_secret": "\(Constant.clientSecret)",
        "response_type": "\(Constant.responseType)",
        "scope" : "\(Constant.scope)",
        "redirect_uri": "\(Constant.redirect)",
        "email": "\(email!)",
        "password": "\(pass!)"

    ]

    print(parameters)

    Alamofire.request(.POST, "http://url/login/", parameters: parameters, encoding: .JSON).responseJSON { response in
        switch response.result {
        case .Success:

            if let value = response.result.value {
                let json = JSON(value)
                print("JSON: \(json)")
                let accessToken = json["access_token"].string!
                let …
Run Code Online (Sandbox Code Playgroud)

ios swift alamofire

2
推荐指数
1
解决办法
904
查看次数

在tableview上禁用高亮[swift]

如何在不禁用func的情况下禁用tableview上的高亮显示?我试过这些,现在我不能去另一页.

func tableView(tableView: UITableView, shouldHighlightRowAtIndexPath indexPath: NSIndexPath) -> Bool {
    return false
}
Run Code Online (Sandbox Code Playgroud)

tableview ios swift

2
推荐指数
1
解决办法
1722
查看次数