问题标签 [swift2.2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 可选委托方法上的 respondsToSelector
我正在将此Objective-C 开源项目转换为 Swift。它有一堆可选的代表。
我像这样将它们转换为 Swift。
在 Objective-C 项目中,在调用这些可选方法之前,它会respondsToSelector
像这样检查它的可用性。
我通过使BEMAnalogClockDelegate
符合NSObjectProtocol
并像这样调用它们直接将其转换为 Swift。
但这会在项目运行时导致 EXC_BREAKPOINT 崩溃。
我在谷歌上搜索了一个解决方案,并看到了这篇推荐使用guard let
的文章。
但是我的问题是如何指定else
零件中的逻辑?例如,在上面的第一个if else
块中,它检查if
块中的方法,如果失败,它将值设置为块中的graduationColor
to 。UIColor.whiteColor()
else
如果我使用这种方法,我该怎么做guard let
?还是有更好的方法来做到这一点?
swift - 如何在swift中使用可变参数闭包?
在 Swift 的闭包中使用可变参数列表是否有正确的方法?
很快我注意到我可以声明一个函数,它接受一个可变参数列表,像这样
哪个构建得很好。当我尝试使用该功能时:
Xcode 设法自动完成,但在 args 之后关闭括号后,Xcode 中的所有语法突出显示都消失了,我看到一条消息"Command failed due to signal: Segmentation Fault: 11"
,这似乎只是意味着 Xcode 超级混乱。
对于上下文,我计划看看 Swift 是否可以编写一个函数,该函数可以根据可变数量的参数返回答案(映射到获得蛮力答案所需的 for 循环数)。这将是一种测试问题答案的简单方法,例如“给定一个整数数组,找到满足方程 a^3 + b^3 = c^3 + d^3 的所有组合”
反对更优化的解决方案。
“归还所有 2s”就是
单个 for 循环
swift - Swift 在协议变量中严格执行 Class 吗?
协议P
需要一个v
类变量C
。
类X
实现P
了声明一个v
类变量的协议C1
where C1
extends C
。
这是代码:
Xcode 抱怨此错误:
为什么编译器强制我匹配协议中声明的完全相同的类型?
编辑:
Obj-C 中完全相同的实现编译时不会出现错误或警告
swift - 使用 Swift 2.2 扩展字典数组
限制此扩展的正确方法是什么?我的试验没有成功。
例如:
swift - 在闭包中返回泛型类型的动态泛型参数?
我正在尝试为复杂的场景实现一个简单的 API。我有一种异步检索数据的类型(实际上是蓝牙设备)。所以我试图最终得到的 API 是这样的:
我从这篇了不起的文章中得到了一些好主意,所以这就是我试图实现上述目标的目的:
我遇到了返回的闭包类型的问题。我想根据传入的外围泛型类型键进行强类型化,但无法掌握如何做到这一点,或者可能需要不同的方法?任何帮助或方向将不胜感激!
uiscrollview - 在 swift 2.2 中创建滚动视图协议
我目前正在开发一个带有登录和注册表单的 iOS 应用程序。为了确保键盘不覆盖任何UITextField
s,我实施了Apple提供的以下解决方案,并在本期中进行了讨论。
简单总结一下,此解决方案使用 a UIScrollView
,其中放置了不同的 UI 元素,UIKeyboardDidShowNotification
并UIKeyboardDidHideNotification
在键盘出现/消失时上下移动元素,以便UITextField
不隐藏 s。
除了一件事之外,这就像一个魅力:对于我所有的UIViewController
s,我必须重复相同的代码。为了解决我的问题,我尝试过:
- 创建一个 base
UIViewController
,为不同的功能提供实现,可以是其他UIViewController
的子类; - 使用协议和协议扩展为不同的功能提供默认实现,并使 my
UIViewController
s 符合它。
两种解决方案都没有解决我的问题。UIScrollView
对于第一个解决方案,尽管已声明,但我无法通过 Interface Builder 连接我的基类。
在尝试实现第二个解决方案时,UIViewController
实现我的协议以某种方式无法识别声明的方法及其实现。
协议声明:
协议扩展实现了addTapGestureRecognizer()
我希望避免使用的所有功能@objc
:
有没有人对我的问题有很好的解决方案,我知道如何避免UITextField
在键盘出现/消失时重复与上下移动 s 相关的代码?或者有谁知道为什么我的解决方案不起作用?
iphone - 如何使用 swift 使 View 控制器处于活动状态?
当我将主视图控制器留给另一个视图控制器时,我想保持主视图控制器处于活动状态,我需要你的帮助。
我该怎么办,我正在使用 Swift 编程语言。
swift - 如何在 UIWebView 默认播放器中完成按钮操作?
我正在开发 iOS 应用程序。我需要在 UIWebView 中播放视频。一切正常,但我的要求是完成按钮操作。
我们可以在 iOS 中处理 webView 完成按钮操作吗?
谢谢。
swift - Swift 2.2 on ubuntu with package manager
I'm trying to install Swift 2.2 and the swift package manager on ubuntu 15.10.
When I take a look at the Swift Download Page there are 3 downloads available:
Swift 2.2
does not include the package managerTrunk Development (master)
includes the package manager, BUT is swift 3.0Swift 2.2.x Release Branch
does not include the package manager
What do I have to do to get Swift 2.2 with a working package manager?
Use an old trunk
build before they began to develop Swift 3.0
?
Grab the Swift 2.2
release package, build swift-lbuild to build swift-build-tool
in order to build swift-package-manager?
swift - 枚举 Int 强制转换为 NSNumber - 无法将类型的值转换为预期的参数类型
我有一个公共变量,我希望它的初始值为NSNumber
但我在这里遇到错误Cannot convert value of type 'ImageType' to expected argument type 'Int32'
这很奇怪,因为我也将 int 用于我的枚举。