天道酬勤,学无止境

xcode

Display Section Header UICollectionReusableView

问题 我正在开发 iOS 应用程序,但在使用 UICollectionView 单元格时遇到了几个问题。 这次想问一下UICollectionView(UICollectionReusableView)的section header如何显示 我已经实现了如下功能: public func collectionView(collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, atIndexPath indexPath: NSIndexPath) -> UICollectionReusableView { switch kind { case UICollectionElementKindSectionHeader: let headerView = collectionView.dequeueReusableSupplementaryView(ofKind: kind, withReuseIdentifier: "cellHeader", for: indexPath as IndexPath) var labelHeader = headerView.viewWithTag(2) as! UILabel if indexPath.section == 0 {

2022-05-17 05:26:07    分类:技术分享    ios   swift   xcode   uicollectionview   uicollectionreusableview

linking std::experimental::filesystem with Xcode 9

问题 我正在使用带有 Xcode 9.0 beta 的 std::experimental::filesystem 。 编译器阶段完成正常,但链接器抱怨未定义的符号: std::experimental::filesystem::v1::path::__filename() const std::experimental::filesystem::v1::path::__filename() const std::experimental::filesystem::v1::path::__stem() const std::experimental::filesystem::v1::__status(std::experimental::filesystem::v1::path const&, std::__1::error_code*) 我也在使用 std::experimental::filesystem::canonical(),但链接器并没有抱怨它丢失了。 如何配置项目以包含这些缺失的引用? 更新: 我一直在尝试一个更简单的程序。 如果我只使用 canonical() 那么链接器会抱怨它丢失了。 我可以使用 std::experimental::optional - 一切都可以编译、链接和运行。 但是“可选”是一个模板,因此可能不涉及库。 回答1

2022-05-17 05:21:16    分类:技术分享    xcode   macos   c++17

clicking on compiler warnings doesn't take me to the source code in XCode

问题 当我单击 XCode 8.2.1 中的警告时,我曾经被带到源代码中的那一行。 现在我只看到这个显示,它告诉我包含问题的文件,但不告诉我是哪一行导致了问题。 我是否错误地更改了某些设置以导致这种行为? 我最近定义了一个使用 XCode 运行 Python 的新方案,但是该方案应该与用于运行这个 iOS 应用程序的方案完全分开。 是否存在一些已知的方案问题,其中存在溢出交互或其他问题? 回答1 回答2 单击顶级警告Swift compiler warning它应该显示警告行。 警告表明您正在尝试处理字符串,但未指定类型,因此您可能最终得到 nil。 指定一个?? "" ?? ""来处理警告。

2022-05-17 04:50:34    分类:技术分享    xcode

is it possible to get the index (String.Index) value from the cursor position of a UITextView element in Swift?

问题 回答1 您可以获取从文档开头到所选范围开头的选定范围偏移量,并使用该偏移量获取字符串索引,如下所示: extension UITextView { var cursorOffset: Int? { guard let range = selectedTextRange else { return nil } return offset(from: beginningOfDocument, to: range.start) } var cursorIndex: String.Index? { guard let location = cursorOffset else { return nil } return Range(.init(location: location, length: 0), in: text)?.lowerBound } var cursorDistance: Int? { guard let cursorIndex = cursorIndex else { return nil } return text.distance(from: text.startIndex, to: cursorIndex) } } class ViewController: UIViewController, UITextViewDelegate { @IBOutlet

2022-05-17 04:04:03    分类:技术分享    ios   swift   xcode

How do i install xcode on my ubuntu machine?

问题 回答1 第一:您不能在 Ubuntu 上安装 Xcode,它仅限于 Mac OS。 第二:我假设你想要 Swift,你可以使用这个命令在终端上安装它 sudo apt-get install clang 如果您在 Linux 上将 Swift 工具链安装到系统根目录以外的目录,则需要使用 Swift 安装的实际路径运行以下命令: export PATH=/path/to/Swift/usr/bin:"${PATH}" 您可以通过输入 swift 命令并传递 --version 标志来验证您正在运行预期版本的 Swift: swift --version 对于 IDE,您可以使用 Visual Studio Code 并安装 Swift 插件。 祝你好运

2022-05-17 03:31:39    分类:技术分享    xcode   installation

Check if Timer is running

问题 我一直在尝试用计时器重新填充游戏生命,但是每当我离开视图并返回时,计时器就会重复并变得更快。 我试图用Timer?.isValid函数来解决这个问题,以便仅在计时器无效时运行计时器,因此它永远不会重复,但它似乎无法在 if 语句中检查计时器是否无效。 这是我到目前为止一直在使用的 if 语句: if (myTimer?.isValid){ } else{ //start timer } 任何帮助将不胜感激,谢谢。 回答1 var timer : Timer? func startTimer() { if timer == nil { timer = Timer.scheduledTimer... } } func stopTimer() { if timer != nil { timer!.invalidate() timer = nil } } 回答2

2022-05-17 03:30:29    分类:技术分享    ios   swift   xcode   swift3   nstimer

Upgrading Firebase broke my iOS project

问题 我希望我从来没有更新过我的 pod,整个项目充满了错误,一个特定的错误在下面的照片中,我无法修复它,我已经准备好将我的应用程序提交到 App Store 现在看起来一切毁了。 最重要的是,它让我删除了一堆选项。 func uploadData(user: User) { let changeRequest = user.createProfileChangeRequest() changeRequest.displayName = self.nameUser.text! changeRequest.commitChanges(completion: nil) let imageRef = self.userStorage.child("\(user.uid).jpg") let data = UIImageJPEGRepresentation(self.imageView.image!, 0.5) let uploadTask = imageRef.put(data!, metadata: nil, completion: { (metadata, err) in if err != nil { print(err!.localizedDescription) } imageRef.downloadURL(completion: { (url, er) in if er !=

2022-05-17 00:47:20    分类:技术分享    ios   swift   xcode   firebase   cocoapods

Using the same code for different target in Xcode

问题 我想在 Xcode 中对不同的目标使用相同的代码。 我可以使用 Duplicate 方法创建目标,然后我也可以更改方案名称。 现在真正的场景来了,我想以集中方式使用我的代码,比如新目标,我不想复制和粘贴 Main.storyboard 和 xib,所以,如果我改变,理想情况下会发生什么任何东西都在一个地方,所有目标都会共享它。但是问题来了in Main.Storyboard 中的 ViewController 包含主项目“模块”,所以当我运行子目标时,它无法运行。 回答1 回答2 你当然可以。 您可以根据您的要求将单个代码/文件用于多个目标和/或单个目标。 苹果文件相同 看看这些快照: 对于项目中的现有文件,请按照以下步骤分配多个目标选择您的文件 ▶ 实用程序窗口 ▶ 文件检查器 ▶ 目标成员 ▶ 根据您对源文件使用的要求选择目标 创建具有多个目标的新文件菜单>>新文件>>选择文件类型>>分配文件名>>下一步>>为您的文件选择目标。 回答3 您是否尝试过删除模块并选择Inherit From Target ?

2022-05-16 22:37:14    分类:技术分享    ios   xcode   module

How to get a universal link to open the app instead of safari?

问题 我一直在尝试让iOS10的通用链接正常工作,但直到现在还没有工作。 我配置了一个苹果应用站点关联。 已尝试在同一台服务器或另一台服务器上使用根域、使用子文件夹。 在所有情况下,我都会被重定向到 Safari 网页,并通过下拉菜单打开我的应用程序作为选项我错过了什么? 回答1 回答2 在花了一些时间尝试配置 U​​niversal Links 之后,这是我到目前为止所学到的: 1 - 通用链接不适用于重定向或当您在 Safari 地址栏中键入链接并按 Enter 时。 2 - 在 Notes 中输入您的地址并单击它,如果您的应用程序直接打开,则表示您已正确设置所有内容。 3 - 当用户在您的网站上执行操作时,通用链接起作用,尝试将按钮添加到您的网站/博客并将其链接到实现打开您的应用程序的通用链接。 现在在 Safari 中打开您的网站/博客,然后单击按钮,它将直接打开您的应用程序。 4 - 当您在 Safari 中单击“打开”时,后续调用将不会直接打开应用程序,原因在第 1 点中提到。 希望这可以帮助 :) 回答3 在 AppDelegate.m 中调用: -(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary

2022-05-16 21:41:16    分类:技术分享    ios   xcode   ios-universal-links   mobile-development

Disabling keyboard input when using a UITextField + UIPickerview

问题 这个项目也点击textfield pickerview打开,但是上面显示的数据可以在section中输入。 我怎样才能关闭它? 因此,请在下面进行我的选择。 如果单击文本字段,我会打开选择器视图: import UIKit import NVActivityIndicatorView struct kategoriData { var text : String? var id : String? } class KonuEkleViewController: UIViewController,UITextFieldDelegate , NVActivityIndicatorViewable , UIPickerViewDataSource , UIPickerViewDelegate{ @IBOutlet weak var txtBaslik: UITextField! @IBOutlet weak var txtYazi: UITextView! @IBOutlet weak var txtLink: UITextField! @IBOutlet weak var btnKonuAc: UIButton! @IBOutlet weak var txtKategoriSecimi: UITextField! let size = CGSize(width: 30

2022-05-16 19:56:04    分类:技术分享    ios   swift   xcode   uitextfield   uipickerview