ios - 如何使用 swift 从 [Any] 访问 key

标签 ios swift sorting nsmutablearray any

我正在使用 swift 开发应用程序,我正在通过链接 https://docs.cometchat.com/ios-sdk/quick-start/ 集成 cometchat .所以我从服务器获取聊天记录。

现在我从服务器获得了两个(发送者消息和接收者消息)nsmutablearray 值。

var firstArr = response!["history"]!作为! NSMutableArray

   var secondArr = response!["history"]! as! NSMutableArray

我合并了两个 nsmuatblearray 值,得到的结果是:

 [
    {
        from = 1;
        id = 68;
        localmessageid = "46A9A5E5-FEEC-4588-B7D6-18E88BA68393_2";
        message = "ckeck messages";
       "message_type" = 10;
        old = 1;
        self = 1;
        sent = 1521185409000;
    }, 
    {
        from = 2;
        id = 69;
        localmessageid = "46A9A5E5-FEEC-4588-B7D6-18E88BA68393_1";
        message = "sent to thiyakarajan";
       "message_type" = 10;
        old = 1;
        self = 1;
        sent = 1521185410000;
    }
 ]

在响应中发送的键值被称为时间戳。

使用发送的键(时间戳)帮助我对数组进行升序排序 订单。

还有我在 TableView 中加载消息值。

谢谢

最佳答案

您可以使用 [[yourarray objectAtIndex:indexPath.row]objectForKey:@"message"] 等代码访问 TableView 的 cellforrowatindexpath 方法中的数组。通过使用这一行,您可以在 indexPath 0 处访问数组消息的值。另外,根据时间戳对数组进行排序,请引用以下代码:

NSSortDescriptor* sortOrder = [NSSortDescriptor sortDescriptorWithKey: @"sent" ascending: YES];
return [myArray sortedArrayUsingDescriptors: [NSArray arrayWithObject: sortOrder]];

我们在 ReadyUI 代码中使用了相同的方法。如果您需要其他帮助,请引用我们的 ReadyUI 源代码并发送电子邮件至 support@cometchat.com。

关于ios - 如何使用 swift 从 [Any] 访问 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49315793/

相关文章:

html - 我的 HTML 会阻止 UIWebView 检测电话号码吗?

iOS Delegate 返回 nil (Swift)

ios - 在 View Controller 之间平移(而不是滑动)

sorting - pandas 按大写字母排序

objective-c - if 语句在其条件变量设置之前执行

iphone - iOS 设备上的粗体字体

jQuery 按跨度对列表进行排序

java - java eclipse中的断点错误

iOS 应用程序不断崩溃,但在现场测试中运行良好

ios - Swift Firebase 检查认证更顺畅