我想在我的Swift iOS应用程序中使用核心数据,但是如何从任何ViewControllers中调用核心数据的managedObjectContext呢?
假设我想调用这个方法,它是在目标C中使用的:
self.managedObjectContext = ((AppDelegate *) [UIApplication sharedApplication].delegate).managedObjectContext;
但是,当我在Swift文件中编写以下代码时,它得到了错误:UIApplicationDelegate does not have a member called manage
我已经从另一个项目中添加了包含Objective类的文件到我的Swift项目中。在这些Obj类中,有一个称为char *类型的"decodedBuffer“的数据成员。我对C不是很熟悉,但我认为char指针是C表示字符串的方式。当我在Swift代码中尝试获取此数据成员时,例如编写以下行
myObjCClass.decodedBuffer = "a new value"
我在说decodedBuffer是UnsafePointer<Int8>类型时出错了。所以我有两个问题:
为什么char *是Swift中的UnsafePointer<Int8>
我读过、和,试图来回传递一些数据。我想我所做的正是这些帖子所描述的,这些数据还没有通过。我错过了什么我不知道是什么。如果你能指出那是什么,那就太棒了。(预先谢谢:)
我还应该提到,我使用一个模态索引来展示TaskMessageViewController。我想把数据发回我的TaskListViewController。我目前正在使用unwindToSegue返回到TaskListViewController。
在我的Protocols.swift文件中,我有以下代码:
import Foundation
protocol ReceiveMessageDelegate {
func r
我想将一个全局数组(在.swift文件中)传递给特定的ViewController。这是我的密码
commonData.swift
import Foundation
var regionArray:[Bool]?
let region = [
"United States",
"United Kingdom"
]
testTableViewController.swift
import UIKit
var arraySize:Int?
var boolArray:[Bool]?
class testTableViewController: UITabl
我在c中有一个函数,它接收一个预先分配的字符串,并用数据填充它--我想从swift调用这个函数。我找到了许多关于如何将字符串从swift传递到c的示例,但我发现没有一个示例显示c函数将数据写到预先分配的字符串上。
C函数:
int GetData(char *dataJson, int maxSize);
在快速方面,这段代码可以编译,但我找不到如何预分配dataBuffer
let dataBuffer = UnsafePointer<UInt8>
GetData(dataBuffer, 2048)
有没有办法在Swift中做到这一点?
我有大量用Swift编写的代码(在macOS上),我希望其他用C编写的代码可以使用。具体来说,我想在Swift中创建一些胶水代码,它导出许多具有C调用约定和未损坏名称的函数,并调用相关的Swift代码。
是否可以创建一个Swift文件,其中包含一个名为foo的函数,如下所示:
func foo() → () {
print("This is in Swift");
/// call other Swift code here
}
当使用swiftc将其编译为.o文件时,可以与包含以下内容的C文件链接:
extern void foo();
...
void
我有一个非常简单的应用程序,其中包含两个视图是捆绑在一起的一个NavigationLink。在第一个视图ContentView中,我可以看到我的ObservedObject如预期的那样更新。但是,当我转到下一个View时,基于ObservedObject的代码似乎无法识别更改。
ContentView.swift (工作视图):
import SwiftUI
struct ContentView: View {
@ObservedObject var toggleObject = ToggleObject()
var body: some View {
Na
我试图在我的key链实用工具类中调用SecItemCopyMatching,以便从密钥链中获取数据,但是在获取result参数UnsafeMutablePointer<CFTypeRef?>时遇到了问题。
最初的声明(在Swift 2中,在迁移到Swift 3之前)是
// query is a dictionary of [String : AnyObject]
var result: Data?
let status = withUnsafeMutablePointer(to: &result) {
SecItemCopyMatching(query as C
我一直在将我的项目代码迁移到Swift 4.0。
我正面临着闭包的问题。在下面的代码片段中:
class ViewController: UIViewController
{
var completionClosure: ((Void)->(Void))? //WARNING: When calling this function in Swift 4 or later, you must pass a '()' tuple; did you mean for the input type to be '()'?
override
在WWDC19会话204中,演示了如何使用SWIFT5.1和List函数构建UI。我想使用核心数据,而不是有一个数据文件。问题是核心数据实体不符合可识别的协议。
我已经在网上进行了广泛的搜索,并观看了几个核心数据视频,但它们都过时了。它们都没有涵盖SWIFT5.1和新测试版函数(如List)。
我创建一个包含一些字段的实体(名称,id ->,它是UUID)。然后手动生成如下所示的源文件:
AccountsMO+CoreDataClass.swift**:**
import Foundation
import CoreData
public class AccountsMO: NSMa
我想写一个Swift程序
接受标准输入中的单个参数或管道数据,如果两者都缺少,则打印。
假设代码包含在main.swift中,我们有四种情况:
swift main.swift应该输出“请提供一些input"swift main.swift argument应该输出"argument"echo | swift main.swift应该输出”请提供一些input"echo argument | swift main.swift应该输出“参数”
在复合echo argument1 | swift main.swift argument2的情况下,argument2优
我知道,在YouTube上有很多关于如何在视图控制器之间传递数据的视频。但这不是我所需要的。我是这个网站和Xcode的新手。我在这里没有找到答案。我的应用程序从VCA移动到VCB,并带有一个segue。我需要将计算值从ViewControllerA.swift传递到ViewControllerB.swift示例中的ViewControllerA.swift代码。
let weight = Double(textField.text!)
let calculatedValueA = weight! * 2
let calculatedValueB = weight! * 3
let calcul
我想知道如何在SwiftMailerHandler打包器中使用Monolog?
在Monolog文档中,我没有看到任何关于SwiftMailerHandler的使用示例,也可能漏掉了。
下面是SwiftMailerHandler构造函数代码:
/**
* @param \Swift_Mailer $mailer The mailer to use
* @param callable|\Swift_Message $message An example message for real messages, only the body will be replaced