Tag: xcode6

导入ChatKit(即私人框架)或使用CKDBMessage莫名其妙

首先 – 我知道私人框架/ API不会让我到AppStore,这是只供私人使用/研究。 我不能让我的项目与ChatKit.framework编译。 基本上我需要以某种方式初始化CKDBMessage对象并从中获取东西。 我尝试的第一种方法是能够调用这个: CKDBMessage* msg = [[CKDBMessage alloc] initWithRecordID:lastID]; NSLog(@"GOT SMS: %@", msg.text); 我不能用这些解决scheme的任何组合来编译它: 只需将CKDBMessage.h添加到我的项目中 添加ChatKit.framework所有标题 也添加ChatKit.framework文件本身 我有Headers文件夹中的Headers文件和框架文件,我尝试添加任何/所有这些构build设置,无论是recursion/非recursion: 框架searchpath – > $(PROJECT_DIR)/Headers 标题searchpath – > $(SRCROOT)/Headers/ChatKit.framework/Headers $(SRCROOT)/Headers 用户标题searchpath – > $(SRCROOT)/Headers $(SRCROOT)/Headers/ChatKit.framework/Headers 始终search用户path始终为YES 我尝试的第二件事是在运行时做所有事情,这就是我所拥有的: Class CKDBMessage = NSClassFromString(@"CKDBMessage");// objc_getClass("CKDBMessage"); SEL sel = @selector(initWithRecordID:); NSMethodSignature *signature = [CKDBMessage methodSignatureForSelector:sel]; NSInvocation *invocation = […]

自定义TableViewCell没有故事板

我正在使用从TableViewCell扩展自定义cocoa类,它不会给出任何错误消息,但单元格不会出现在tableview中。 滚动变长,但表格单元格不可见。 我在我的ViewController中键入这个: tableView.registerClass(CustomTableViewCell.self, forCellReuseIdentifier: "Cell") func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath)->UITableViewCell { var cell:CustomTableViewCell? = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as? CustomTableViewCell if cell == nil { cell = CustomTableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: "Cell") } cell!.labTime.text = filtered[indexPath.row].name! return cell! } 和我的单元格类似 var labTime = UILabel() override func awakeFromNib() { // Initialization code super.awakeFromNib() labTime = UILabel(frame: […]

致命的错误:意外地发现零,而解包可选值 – 斯坦福计算器

我正在观看ItunesU上的Standford Swift讲师,并且在理解上有些麻烦。 讲师在一个点上将string转换为Double。 他做了如下: return NSNumberFormatter().numberFromString(display.text!)!.doubleValue display.text是一个UILabel无论如何,当我这样做我的应用程序崩溃,我得到以下错误: fatal error: unexpectedly found nil while unwrapping an Optional value 当我像这样types化string时: (display.text! as NSString).doubleValue 它工作正常。 我知道在任何地方都必须有一个可选的variables,但是我不是那么认为在这一点上出了什么问题。 我很高兴每一个提示。

用Swift淡入淡出UIImage的animation

我有一组图像,我想在我的login屏幕背景中淡入淡出。 我无法迅速find任何可以做到这一点的东西。 有没有一种方法,我将能够? inheritance人我现在的代码: override func viewDidLoad() { super.viewDidLoad() startAnimating() // Do any additional setup after loading the view, typically from a nib. } func startAnimating(){ backgroundImage.animationImages = [ UIImage(named: "background1.jpg"), UIImage(named: "background2.jpg") ] backgroundImage.animationDuration = 3 backgroundImage.startAnimating() }

iOS 8.0中的UISearchBar barTintColor clearColor错误

在我的应用程序中,我在xib中使用了UISearchBar和Xcode 6.并且我给出了锡条颜色是清晰的颜色。 它在下面的iOS 7.1上工作。 但主要的问题是在iOS 8.0不能工作清晰的颜色。 它显示黑色。 见图 : 任何人都有冒险的这个问题。

Google plusloginxcode共享扩展

我正在编写一个iOS应用程序,通过电子邮件分享网页链接,作为其中的一部分,我希望用户能够login到谷歌加。 我已经得到了包含的应用程序工作正常使用从这里的指示: https://developers.google.com/+/mobile/ios/sign-in 现在我试图添加一个共享扩展,也可以访问用户的谷歌+configuration文件。 我开始试图将loginbutton添加到共享扩展,但我不认为这将工作,因为点击button后,你从应用程序中取出到浏览器接受权限,然后有没有办法重新回到共享扩展(或者至less我不能看到一种方式)。 我现在所希望的是,用户可以在主(含)应用程序中login和接受权限,但之后再使用共享扩展,并且仍然使用相同的configuration文件login。 我在共享扩展中使用自定义UIViewController,作为第一次尝试,我试图在共享扩展中使用相同的客户端ID作为包含的应用程序,并在viewDidLoad方法中调用此: GPPSignIn *signIn = [GPPSignIn sharedInstance]; signIn.shouldFetchGooglePlusUser = YES; signIn.shouldFetchGoogleUserEmail = YES; signIn.clientID = kClientID; signIn.scopes = @[ @"profile" ]; signIn.delegate = self; if ([signIn hasAuthInKeychain]) { NSLog(@"Has auth in keychain"); } else { NSLog(@"No auth in keychain"); } 在包含应用hasAuthInKeychain返回true,但在共享扩展它是错误的。 我正在使用的客户端ID绑定到主应用程序包,所以我不知道我是否应该能够在共享扩展中使用它,但如果我试图为共享创build一个单独的客户端ID那么推测大概我需要再次通过授权过程? 有没有一种方法可以从主应用程序访问现有的身份validation令牌,并在共享扩展中使用它?

UICollectionViewCell中的viewWithTag在Swift中返回nil(直到单元格被重用)

这个冗长的标题大致是我的问题。 我开始在Swift项目中使用UICollectionView进行简单的学习示例。 我添加了CollectionView到由模板创build的ViewController,分配了委托和数据源。 自定义单元格是在故事板中创build的。 重用标识符已设置。 一切都很好。 我已经在自定义单元格中放置了一个UILabel,并给了标签值100。 这是我的ViewController的代码: https : //gist.github.com/tomekc/becfdf6601ba64d5fd5d 有趣的exceprt如下: func collectionView(collectionView: UICollectionView!, cellForItemAtIndexPath indexPath: NSIndexPath!) -> UICollectionViewCell! { let cell = collectionView.dequeueReusableCellWithReuseIdentifier("element", forIndexPath: indexPath) as UICollectionViewCell cell.backgroundColor = UIColor.yellowColor() // list subviews NSLog("— ROW %d —", indexPath.row) printSubviews(cell) if let labelka = cell.viewWithTag(100) as? UILabel { labelka.text = String(format: "Row %d", indexPath.row) […]

在使用SKShapeNode的Xcode 6 Beta 4中不起作用

在Xcode 6testing版2中工作正常,但在testing版4中,它不再工作。 有谁知道背后的秘密是什么? let circle = SKShapeNode(circleOfRadius: 125); circle.strokeColor = UIColor(red: 255, green: 255, blue: 255, alpha: 1.0); circle.lineWidth = 4 self.addChild(circle); 在testing版4中,什么也看不到。 感谢您的帮助提前。

iOS本地化/设置的国际化使用Xcode 6 XLIFF导出的笨拙

背景: Xcode 6添加了一个快速导出function,为每种语言创build一个XLIFF文件(只需从文件导航器中select您的项目,然后select菜单项编辑器→导出为本地化 )。 问题: 它工作得很好,在XML中包含了一切…除了设置捆绑string 。 有没有人有这方面的经验? 编辑: 经过深入的研究,看起来没有办法强制Xcode(版本6.1)将Settings Bundle Strings包含到XLIFF文件中。 所以它必须单独翻译。

Swift:内存不清除,当我继续到另一个视图控制器,接收内存警告

我正在Xcode 6.2中build立一个应用程序,用于iOS 8.1。 我有一个UIViewController ( LevelViewController ),其中包含一个UICollectionView其单元格代表我的游戏中的一个级别(每个人都有一个数字标签)。 一旦选中了其中一​​个单元格,我将执行一个显示segue到一个SKScene ,它将加载该特定级别的所有数据。我还有一个“菜单”button,它执行一个show segue回到主菜单。 在function上,这一切工作,但是我执行两个赛段后有严重的记忆问题。 在仪器中窥视之后,看来当我从LevelViewController ,为每个单独的UICollectionViewCell添加的所有UILabel都保留在内存中,以及单元中包含的所有其他内容。 应该只有192个标签(对于192个级别),但是在执行了几次这个分段之后,他们在仪器中加起来大约为1000个。 显然这些内存没有被释放,我的理解是swift应该处理这个问题,所以我不确定问题是什么。 我还应该注意到UICollectionView是以编程方式添加的,并且没有使用IBOutlets 。 那么我怎么能摆脱这些标签,实际上,当我离开UICollectionView时候, UICollectionView本身就是LevelViewController 。 我对此非常困惑,并且毁了我的圣帕特里克日。 所以对于所有事情的爱情爱尔兰请帮助一个小伙子:) 注:我试过的方法 self.collectionView.removeFromSuperView() self.collectionView = nil self.collectionView.deleteItemsAtIndexPaths(path)