gpt4 book ai didi

ios - 共享扩展 - 删除文本字段

转载 作者:IT王子 更新时间:2023-10-29 05:38:27 24 4
gpt4 key购买 nike

有没有办法从我的 ShareExtention 中删除标记为红色的 TextView 和 PreviewPart?

我使用的是默认值:

class ShareViewController: SLComposeServiceViewController

作为 View Controller

我只想像下面那样显示目标选择器(我知道如何创建它)我知道您可以创建自己的 ViewController,但很难重建默认的。

第二件事是:您会推荐哪种方法来传输/复制数据/文件以及使用哪种方法来读取主应用程序的文档目录?

我想将选定的文档传输/复制到我的主应用程序的文档目录中。两者都在同一个 AppGroup 中。 Bc 如果我只是将当前文档的 Url 保存在 UserDefault 中,那么我猜主应用程序无法访问它。

我需要读取主应用程序的文档目录,因为我需要文件 Hierachy 以便我可以选择保存位置。

Note: Just because there was some confusion in the comments for whatever reason: This is my own ShareExtention and not smo else's in UIActivityController

Screenshot

最佳答案

不是最好的,但这是我根据 docs 得到的结果:

override func viewDidLoad() {
super.viewDidLoad()
textView.isHidden = true
}

但是后面有空格。也许最好放入一些占位符文本并阻止用户输入。您可以使用文档中的其他选项,或者您可以弄乱 textView(这是一个 UITextView)...

编辑:这是一个完整的示例,在文本字段中显示 URL,灰色且用户不可交互。

class ShareViewController: SLComposeServiceViewController {

override func viewDidLoad() {
super.viewDidLoad()
textView.isUserInteractionEnabled = false
textView.textColor = UIColor(white: 0.5, alpha: 1)
textView.tintColor = UIColor.clear // TODO hack to disable cursor
getUrl { (url: URL?) in
if let url = url {
DispatchQueue.main.async {
// TODO this is also hacky
self.textView.text = "\(url)"
}
}
}
}

override func isContentValid() -> Bool {
// Do validation of contentText and/or NSExtensionContext attachments here
return true
}

func getUrl(callback: @escaping ((URL?) -> ())) {
if let item = extensionContext?.inputItems.first as? NSExtensionItem,
let itemProvider = item.attachments?.first as? NSItemProvider,
itemProvider.hasItemConformingToTypeIdentifier("public.url") {
itemProvider.loadItem(forTypeIdentifier: "public.url", options: nil) { (url, error) in
if let shareURL = url as? URL {
callback(shareURL)
}
}
}
callback(nil)
}

override func didSelectPost() {
getUrl { (url: URL?) in
if let url = url {
DispatchQueue.main.async {
print("url: \(url)")
}
}
}
}

override func configurationItems() -> [Any]! {
// To add configuration options via table cells at the bottom of the sheet, return an array of SLComposeSheetConfigurationItem here.
return []
}

}

lol yahoo yahoo sucks

关于ios - 共享扩展 - 删除文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46606221/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com