我刚刚升级到Xcode 6 Beta 4并且有一个我在Beta 2中为Live Views创建的框架.由于另一个快速的bug,我需要使用一些Obj-C代码.升级时,我收到以下错误:
错误:不支持将桥接头与框架目标一起使用
我没有在发行说明中看到任何内容,也没有找到任何其他迁移路径.还有其他人看过这个并找到了解决方案吗?
我意识到Beta 3消除了对实时视图框架的需求,但在我的情况下,如果我可以让它工作,这是有道理的.我可以删除它作为后备,但如果它们在Beta 4中没有完全破坏,我宁愿使用框架.
Cartfile文档做出断言:
如果没有给出版本要求,则允许任何版本的依赖项.
与矛盾的例子:
# Use the latest version
github "jspahrsummers/xcconfigs"
Run Code Online (Sandbox Code Playgroud)
此外,它没有说明,但从测试,我推断"最新"实际上是最新标签的版本.这种解释是否正确?如果是这样,如何指定最新的提交 - 您是否必须手动检查并指定最新提交,或者是否有更简单的方法?
我试图使用私有存储库来分解更大的应用程序.我遵循了以下指南:
我创建了一个本地存储库来包含规范,通过发布到cocoapods
pod remote add MySpecs ~/local/path/to/MySpecs.git
,
验证了cocoapods通过查看内容来看待它们 ~/.cocoapods/repos/MySpecs
我在PrivateSpec
内部引用PrivateClientSpec
如下:
s.dependency 'PrivateSpec' '~> 0.1.0'
问题是当我尝试lint时PrivateClientSpec
,我得到了名义错误:
Unable to find a specification for [PrivateSpec] depended upon by [PrivateClientSpec]
我错过了什么吗?据我所知,这是受支持的行为.我正在使用cocoapods v0.35.
谢谢!
题
是否可以设置Xcode/Interface Builder的实时渲染执行的断点和调试代码?也就是说,我使用IBDesignable和IBInspectable属性来影响视图,因为它在界面构建器故事板中呈现,并且希望能够调试"IB崩溃"错误.我不记得WWDC会话中的这个,除了关于prepareForInterfaceBuilder的部分.
上下文
我最近开始看到一些错误报告在尝试渲染我的代码时IB崩溃了.我最终将它追溯到layoutSubviews中的一个无辜的代码行,在我的一个视图中,它是从故事板链接的.IB在渲染实时视图时的特定问题,在设置所有视图的子视图属性之前称为layoutSubviews(这本身就是一个单独的问题).这与模拟器和设备形成对比,其中视图是在第一次调用layoutSubviews之前设置的.不过长话短说,它涉及分散一堆文件以找到违规的变化.可以说,如果可以设置断点并捕获崩溃,我本可以快速找到问题.
有没有人想出如何调试和/或一般陷阱这些问题,或者该访问还没有?
编辑:这个问题的目的是理解使用隐式可选运算符"!" 在早期的UIKit API更新中,特别是如果函数被声明为返回预期为非可选的类型,为什么要使用可选,如果它是可选的,为什么不使用可选的"?" 运营商."!"的语义 虽然总是很清楚.
随着时间的推移,苹果公司审核API以使选项更精确,使用?对于真正的可选类型,并且当它们实际上是非可选的时使用非可选类型.这是对最初的Objective-C签名的保留,这些签名通常含糊不清.
快速文档解释了目的!可选类型的拆箱操作符,
var optionalString : String? = "optional"
var regularString: String = optionalString!
Run Code Online (Sandbox Code Playgroud)
但他们在类型定义本身(String!)上使用它,没有我能找到的明确解释.
例:
func takesBang(value:String!) -> String {
if !value {
return "nil value, without the safe syntax"
}
return "This works"
}
var unsafe:String!
takesBang(unsafe) // yields "nil value, without the safe syntax"
Run Code Online (Sandbox Code Playgroud)
字符串!type不会强制取消装入可选类型,但似乎只是删除了对可选语法的需要(?.).Apple在他们自己的例子中使用它,但它似乎只是否定了可选的安全(指针)机制.
任何人都可以解释目的/动机吗?这通常是不安全的,因为呼叫者不必检查或至少考虑它们的价值.
简单的问题 - 希望,我正在尝试生成一个简单的字符数组,其中包括:
// trying to do something like this (pseudo code):
let letters:[Character] = map(0..<26) { i in 'a' + i }
Run Code Online (Sandbox Code Playgroud)
并尝试了以下无济于事
let a = Character("a")
let z = Character("z")
let r:Range<Character> = a..<z
let letters:[Character] = map(a..<z) { i in i }
Run Code Online (Sandbox Code Playgroud)
我意识到Swift使用Unicode,这样做的正确方法是什么?
(注意,这不是关于与传统Obj-C char互操作的问题,严格来说在Swift中进行测试等).
我正在为诗人和作家开发一个社交网络应用程序,允许他们分享他们的诗歌,收集反馈,并与其他诗人交流.我在数据库设计方面的培训很少,但我一直在阅读书籍,SO和在线数据库设计资源,以确保性能和可扩展性而不会过度设计.
数据库是MySQL,应用程序是用PHP编写的.我不确定我们是否会在应用程序中使用ORM库或从头开始编写SQL查询.除了Web应用程序之外,Solr搜索服务器和某些消息传递客户端将与数据库进行交互.
我在下面拼凑的模式代表了网站第一版的主要组件.最初,用户可以注册该站点并执行以下任何操作:
以下是我在MySQL Workbench上为初始站点提出的建议.我对某些关系数据库事物仍然有点模糊,所以请轻松一点.
谢谢您的帮助!
如何编写一个自定义segue,允许您从不同的故事板嵌入视图控制器?
我正在尝试编写一个自定义segue,我可以从一个故事板链接到另一个故事板.atomicobject.com上的一篇好文章说明了如何创建一个源自按钮/事件等的segue.转换为swift,并允许非UINavigationControllers,代码如下所示:
public class SegueToStoryboard : UIStoryboardSegue {
private class func viewControllerInStoryBoard(identifier:String, bundle:NSBundle? = nil)
-> UIViewController?
{
let boardScene = split(identifier, { $0 == "." }, maxSplit: Int.max, allowEmptySlices: false)
switch boardScene.count {
case 2:
let sb = UIStoryboard(name: boardScene[0], bundle: bundle)
return sb.instantiateViewControllerWithIdentifier(boardScene[1]) as? UIViewController
case 1:
let sb = UIStoryboard(name: boardScene[0], bundle: bundle)
return sb.instantiateInitialViewController() as? UIViewController
default:
return nil
}
}
override init(identifier: String!,
source: UIViewController,
destination ignore: UIViewController) { …
Run Code Online (Sandbox Code Playgroud) 我在GitHub上有一个使用Jekyll Now构建的网站,并且希望它出现在Google搜索中。如果我只是谷歌搜索我的GitHub用户名,后跟“ GitHub”和“ io”,则找不到我的网站。如何让Google在Google搜索中找到我的网站?
自从安装XCode 6 GM以来,它一直处于冻结和锁定状态,在我尝试编辑具有语法错误的代码时显示死亡的旋转轮.有没有其他人看过这个,有没有任何已知的解决方案?
我愚蠢地放弃了保存以前版本(Beta 7)的谨慎策略,似乎Beta 7不再可供下载.是否有任何已知的链接档案?
我还发布了开发论坛,并将跟进一个错误报告,但很难确定具体情况.
附加说明:
CPU:SourceKit服务通常约为100%,但这似乎已经成为XCode风格的标准,并且CPU在完成重新编译时似乎正确地下降了.
RAM:SourceKit不再显示曾经导致其停止和着火的内存泄漏,内存似乎不是一个因素,并且有几个~5 +以上的演出.
环境:
2012年末Mac Mini,16GB RAM OS X 10.9.4(公平地说,这也是今天新推出的,由XCode 6 GM的要求驱动).
也就是说,今天只有软件改变了.
Apple声称此漏洞已在Beta 6.1中修复,因为它的价值.