小编koe*_*oen的帖子

使用AFNetworking 2.0进行分组或批量请求

我正在尝试找出使用AFNetworking 2.0对大量GET请求进行分组或批处理的最佳做法.所有GET请求都需要在代码可以继续之前完成,但它们不必一个接一个地运行.现在对于单个请求,我正在使用AFHTTPRequestOperationManager(另见此处:子类AFHTTPRequestOperationManager?).

这里描述了一种可能性,使用dispatch_group:如何使用AFNetworking 2批量请求?,但那是为了AFHTTPSessionManager,这只是iOS7.我的应用程序仍然针对iOS6,所以我需要使用AFHTTPRequestOperationManager.

是否正在使用dispatch_group?或者AFNetworking内置了一些我忽略并可以用于此的内容?

编辑:仍然不知道正确的方法是什么...例如,我如何使用组AFHTTPRequestOperation

我尝试了以下内容,但在所有响应进入之前,最终会首先显示最终的NSLog("完成搜索"):

dispatch_queue_t dispatch_queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_group_t dispatch_group = dispatch_group_create();

for (Entry *e in self.entries)
{
    dispatch_group_async(dispatch_group, dispatch_queue, ^{
        NSString *queryString = [e getQueryString];         
        NSURL *URL = [NSURL URLWithString: queryString];
        NSURLRequest *request = [NSURLRequest requestWithURL:URL];

        AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
        operation.responseSerializer = [AFHTTPResponseSerializer serializer];
        operation.completionGroup = dispatch_group;
        [operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
            NSLog(@"%@", responseObject);
        } failure:nil];

        [operation start];
    });
} …
Run Code Online (Sandbox Code Playgroud)

ios afnetworking afnetworking-2

10
推荐指数
1
解决办法
2645
查看次数

SwiftUI 从其他类调用函数

我在这里有点麻烦:我有一堂课

class TempC {
    func GetData(){
          //do stuff
    }
}

Run Code Online (Sandbox Code Playgroud)

在 ContentView 中,我想调用该函数,但我无法做到,出现错误...

struct ContentView: View {

var variable : TempC
variable.GetData()
var body: some View {
        Text("Hello World")
    }
}
Run Code Online (Sandbox Code Playgroud)

或以任何其他方法。我现在如何调用外部函数?

PS:我得到的错误variable.GetData()是:

  1. 一行中的连续声明必须用“;”分隔
  2. 预期“(”在州声明的参数列表中
  3. 函数声明主体中应为“{”
  4. 实例方法声明中需要“func”关键字
  5. 'variable()' 的重新声明无效

就好像它期望创建一个新函数而不是获取已经存在的函数。

function swift swiftui

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

IOS 14 中未显示 JSQMessageViewController 的集合单元格中的媒体项

我正在使用 JSQMessageViewController 并且我面临的问题(仅在 ios14 中)我无法在设备中看到图像、视频和音频等媒体项目,尽管这些视图正在生成调试视图层次结构。见下图:-

调试视图层次截图:

在此处输入图片说明

这是集合视图单元格内 UIImage 的描述: <UIImageView: 0x7fe7d6d95b30; 框架 = (20 8; 177 131); clipsToBounds = YES; 不透明 = 否;自动调整大小 = RM+BM; userInteractionEnabled = NO; 层 = <CALayer: 0x600001ce4ec0>>

这是屏幕附加的屏幕截图:

在此处输入图片说明

您可以看到视图为图像生成了空间,但没有显示!

有人面临这个问题吗?我怎么解决这个问题。此问题发生在 iOS 14 中,它在 iOS 13 中完美运行。

objective-c ios swift jsqmessagesviewcontroller ios14

9
推荐指数
1
解决办法
489
查看次数

如何从 XCode 12.2 中删除重复的预览?

我是 XCode 的初学者,点击了两次重复预览,现在我找不到删除重复项的方法。我确定这是非常简单的事情,但我一直在搜索和尝试所有事情大约一个小时,但找不到解决方案......

有人可以帮助我吗?

在此处输入图片说明

xcode swiftui

9
推荐指数
1
解决办法
1248
查看次数

在Swift中将其名称作为字符串访问struct属性

比方说,我有以下structSwift:

struct Data {
   let old: Double
   let new: Double
}
Run Code Online (Sandbox Code Playgroud)

现在我有一个包含数据结构数组的类:

class MyClass {
   var myDataArray: [Data]
}
Run Code Online (Sandbox Code Playgroud)

现在让我们说我想计算旧值或新值的平均值:

func calculateAverage(oldOrNew: String) -> Double {
   var total = 0.0
   count = 0

   for data in myDataArray {
      total += data.oldOrNew
      count++
   }

   return total / Double(count)
}
Run Code Online (Sandbox Code Playgroud)

然后:

let oldAverage = calculateAverage("old")
let newAverage = calculateAverage("new")
Run Code Online (Sandbox Code Playgroud)

但这显然不起作用,因为oldOrNew它不是我的成员struct.

我如何访问oldnew来自"old""new"

struct swift2

8
推荐指数
2
解决办法
2265
查看次数

带有角半径和阴影视图的 UIView 不会在角中剪切子视图

下面是自定义卡片视图的代码。问题是,当我在界面构建器中将子视图添加到此时,它不会将角半径应用于子视图。在大多数情况下,我可以通过使子视图具有清晰的背景颜色来解决这个问题,但我正在努力使用UIImageView. 当我将它添加到卡片时,它最终会出现尖角,而且我无法修复它。

这里的各种解决方案都建议添加第二层来显示阴影。我已经尝试过,但它仍然无法按预期工作。我想要实现的是带有圆角的视图,阴影和添加任何子视图(例如UIImageView)也应该保持圆角半径而不是指出。

我已经尝试了各种设置,layer.masksToBounds并且self.clipsToBounds我似乎总是得到带有圆角半径的子视图,但没有阴影或阴影可见且视图没有剪裁。

@IBDesignable class CardView: UIView {

    @IBInspectable dynamic var cornerRadius: CGFloat = 6
    @IBInspectable dynamic var shadowOffsetWidth: Int = 2
    @IBInspectable dynamic var shadowOffsetHeight: Int = 2
    @IBInspectable dynamic var shadowColor: UIColor? = UIColor(netHex: 0x333333)
    @IBInspectable dynamic var shadowOpacity: Float = 0.5

    override init(frame: CGRect) {
        super.init(frame: frame)
        commonInit()
    }

    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
    }
    override func layoutSubviews() {
        commonInit()
    }

    override func prepareForInterfaceBuilder() {
        commonInit() …
Run Code Online (Sandbox Code Playgroud)

uiview dropshadow swift

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

实现内部类型不同的 Swift 5.1 集合

我正在构建一个在 TableViewController 中显示远程 iBeacon 的 iOS 应用程序。

为了提高性能并测试新的 Swift 5.1 差异功能,我编写了以下代码:

private func updateBeacons(_ rangedBeacons: [CLBeacon]) {
    guard beacons != rangedBeacons else { return }

    let difference = rangedBeacons.difference(from: beacons)
    // Also tried:
    // let difference = rangedBeacons.difference(from: beacons, by: { $0.uuid == $1.uuid })

    // ...
}
Run Code Online (Sandbox Code Playgroud)

当到达此代码时,将fatalError抛出:

致命错误:不受支持:文件 /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.2.259.70/swift/stdlib/public/core/ArrayBuffer.swift,第 231 行

如何对CLBeacons执行收集差异?

引用的代码可以在这里找到:https : //github.com/apple/swift/blob/master/stdlib/public/core/ArrayBuffer.swift#L226-L232

ios swift

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

如何在r中不使用cumprod的情况下累积乘以向量?

我需要创建一个函数cprod-> 将数字向量作为参数并返回相同长度的累积向量。所以,如果我有cprod(c(1,2,3)),返回的向量应该是c (1, 1 * 2, 1 * 2 * 3) = c (1, 2, 6)

这可以在没有的情况下完成cumprod吗?也许与prodfor-loop

r

7
推荐指数
2
解决办法
197
查看次数

用户默认值无法读取 CFPrefsPlistSource 中的值

我有一个消息应用程序,当我收到包含新消息的 APN 时,我使用应用程序扩展来查找联系信息。我在 NSUserDefaults 的帮助下通过应用程序组交换保存在应用程序中的地址簿联系人信息。

最近我不断收到以下错误:

[用户默认值] 无法读取 CFPrefsPlistSource 中的值(域:group.com.xxxx.xxxx,用户:kCFPreferencesAnyUser,ByHost:是,容器:(空),内容需要刷新:是):仅将 kCFPreferencesAnyUser 与容器一起使用允许系统容器,与 cfprefsd 分离

这有时会在我的应用程序中返回空的 NSUserDefaults 并使应用程序表现得像第一次使用一样。我查看了其他链接,特别是这个:无法读取 CFPrefsPlistSource iOS 10 中的值

建议的解决方案都没有解决我的问题。有人知道我应该如何继续吗?

objective-c nsuserdefaults appgroups

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

如何删除 Xcode 13 Info 中的文档类型

我正在尝试删除我在信息项目设置中意外添加的额外文档类型。我好像无法删除它。我已经打开了 plist 并将其从那里删除,但它不断自动添加回来。有人知道如何正确执行此操作吗?

截屏

xcode plist

7
推荐指数
2
解决办法
1361
查看次数