Swift Admob插页式错误

这是相当长的,但它可能是一个非常简单的修复。 大部分是代码,只是跳到底部,会有一个tl;博士 嘿,所以我跟着大约10个关于让Admob插页式广告在我的Swift Spritekit游戏中运行的教程。 除了我见过的所有教程都使用了一个button的IBAction。 目前我希望广告在菜单上偶尔popup一次。 (刚开始,我可能会稍后再改变它)。 这一切都完美的作品,但一旦我点击播放button(去一个不同的场景),然后返回到菜单场景。 (GameScene)插页式function不再发生。 没有错误,只是在应用程序完全closures并重新打开之前不会再发生。 这是代码。 在我的GameViewController类中,我有: var interstital: GADInterstitial! 并在GameViewController加载我有: if let scene = GameScene(fileNamed:"GameScene") { let skView = self.view as? SKView skView!.ignoresSiblingOrder = false scene.scaleMode = .AspectFill scene.viewController = self skView!.presentScene(scene) interstital = GADInterstitial(adUnitID: "ca-app-pub-9776687746813194/9687097060") let request = GADRequest() interstital.loadRequest(request) 同样在GameViewController类中,我有这些function: func ShowAd() { print("doing the showadfunc now") […]

如何获取一个自定义表格视图单元格的索引path,当它的UIImage被UITapGestureRecognizer在prepareForSegue

确定标题中的很多variables,对不起,我不能再简单一些。 首先,我有一个自定义表格单元格,像这样的描述 现在,当用户点击单元格本身时,它将转到视图A,但是,有一个UITapGestureRecognizer连接到左侧的UIImage,它连接到一个继续到视图B. 一切正常,但我需要一些数据,这是在表视图单元格内,我可以传递到视图B,所以它可以做一些东西一旦显示视图。 override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { if(segue.identifier == "toViewA") { }else if( segue.identifier == "toViewBFromThatImage" ){ let viewBVC = ( segue.destinationViewController as! viewBVC ) ///////sender is UITapGestureRecognizer ///////somehow want to get indexpath here viewBVC.selectedIndex = SOMEHOW DIRREVED INDEXPATH } } 也许我应该设置一些东西作为UIImage的标签或手势对象初始化时? 还是应该避免在prepareForSegue中做这个呢? 还是新的这个,所以任何意见,不胜感激。

ARC禁止autorelease?

新来ios并试图从一个函数返回一个NSString。 据我所知,我需要[NSString… alloc] init]为了创build返回的string。 此外,因为我叫alloc ,我想我必须自动autorelease对象,但是我收到消息“ARC禁止显式的消息发送'autorelease'”所以..我如何告诉ios当我完成分配的NSString? – (NSString *) generateUID { char foo[32]; // create buffer of all capital psuedo-random letters for (int i = 0; i < sizeof(foo); i++) foo[i] = (random() % 25) + 65; // 0-25 + CAPITAL_A NSString *uid = [[NSString alloc] initWithBytes:foo length:sizeof(foo) encoding:NSASCIIStringEncoding]; NSLog (@"uid: %@", uid); return (uid); […]

Swift – 如何使用AlamofireImage / ImageShack节省内存?

我正在使用Alamofire , AlamofireImage来使用带有Firebase后端的ImageShack存储caching图像。 有时内存超过100MB。 我想在上传之前学习如何改进我的图像caching和缩放比例。 例如,我已经使用该AutoPurgingImageCache在类整个项目中声明了一个公共caching: let photoCache = AutoPurgingImageCache( memoryCapacity: 100 * 1024 * 1024, preferredMemoryUsageAfterPurge: 60 * 1024 * 1024 ) 有没有什么办法来定义这些memoryCapacity , preferredMemoryUsageAfterPurge来节省内存? 他们究竟是什么意思? 我正在使用下面的Alamofire.upload didFinishPickingImage : func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage, editingInfo: [String : AnyObject]?) { let urlStr = "http://post.imageshack.us/upload_api.php" let url = NSURL(string: urlStr)! let imgData = UIImageJPEGRepresentation(image, 0.25)! […]

应用程序架构,当'状态改变'APNS失败

我已经看到了有关这个话题的几个问题。 但是,所有的简单的说,你只需要从其他手段恢复。 但是没有人解释其他方法是什么! 我找不到答案。 这也是这个问题的评论的后续。 假设我正在研究Uber应用程序。 司机需要知道乘客的位置。 一名乘客设置了123 XYZStreet一个取货地点。 2分钟后,她决定取消整个皮卡。 所以现在我需要通知司机。 这是一个重要的状态改变更新。 首先想到的是: 发送具有content-available:1的通知content-available:1以便在通知到达后立即更新应用程序;在didReceiveNotification中,我调用GET(PassengerInfoModel)并且还包含"alert" : "Pickup has been canceled. Don't go there'那么驱动程序也会被直观的通知,显然通知并不是pipe理更新的content-available的content-available被设置为1来pipe理。 但是这样做,当通知到达失败时仍然会发生什么情况? 那么最新的GET(PassengerInfoModel)将不会发生。 作为一个解决scheme,我听说过一个HEAD请求: HEAD方法与GET相同,除了服务器不能在响应中返回消息体 。 响应HEAD请求的HTTP头中包含的元信息应该与响应GET请求发送的信息相同。 这个方法可以用来获得有关请求隐含的实体的元信息,而不用传递实体主体本身。 此方法通常用于testing超文本链接的有效性,可访问性和最近的修改 。 不知道如果使用HEAD请求会发生什么,我们发现有更新! 然后,我们是否在HEAD的完成处理程序的成功情况下发出GET请求? Question1我们应该如何处理HEAD请求响应? (我猜测,服务器能够路由HEAD请求,必须有一些变化,但让我们假设这是超出了问题的范围)。 Question2我们多久需要做这个请求? 根据这个评论,一个解决scheme可能是在viewDidAppear设置一个重复计时器,例如每2分钟发一个HEAD请求。 这是一个好主意吗? Question3现在让我们说,我们做了HEAD请求,但GET(PassengerInfoModel)也是从其他2场景/ viewControllers请求。 服务器无法区分不同的场景/视图控制器。 我猜测一个解决scheme将是所有的应用程序的networking请求pipe理通过一个单身NetworkHandler。 这是一个好主意吗? 我知道这个问题很广泛,但是认为这个问题需要整体解决

Xcode控制台说Firebase没有configuration

我不知道为什么这不起作用我的Firebase已configuration。 这里是我的AppDelegate.swift文件的屏幕截图 。 这是我的控制台日志: 2017-05-29 17:52:53.141 Study M8[31592] <Error> [Firebase/Core][I-COR000003] The default Firebase app has not yet been configured. Add [FIRApp configure] to your application initialization. Read more: https://firebase.google.com/docs/ios/setup#initialize_firebase_in_your_app. 2017-05-29 17:52:53.184 Study M8[31592:1051241] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'The default FIRApp instance must be configured before the default FIRAuthinstance can be […]

iphone写入文件失败

我正在写一些数据到plist文件,但是它在设备上失败了,但是在模拟器中却没有。 我迷路了,不知道在哪里寻找解决scheme。 这是我的代码: NSMutableDictionary *dict = [[NSMutableDictionary alloc] init]; [dict setObject:nameField.text forKey:@"name"]; [dict setObject:emailField.text forKey:@"email"]; BOOL ret = [dict writeToFile:[[NSString alloc] initWithString:[[NSBundle mainBundle] pathForResource:@"settings" ofType:@"plist"]] atomically:YES]; NSLog(@"%d",ret); [dict release]; 日志在设备上返回0,但在模拟器中返回1。 有人能帮我吗?

如何更优雅地添加/删除表格视图中的单元格?

我认为这可能是一个XY问题,所以我会先给出一些背景信息。 我正在构build一个可以显示“表单”的应用程序。 用户可以用一些东西填写表格,并创build一些自定义的东西。 我认为最合适的做法是为表单使用表格视图。 我可以在每个表格单元格中显示需要填写的所有文本框。 这里有一个截图: 点击“添加新input”button将在底部插入一个新的单元格。 如果您将其中一个input滑动到左侧,则会出现“删除”button。 您可以使用它来删除input。 正如你所看到的,这个表视图需要添加和删除行。 最初,我正在使用一个名为“TableViewModel”的cocoapod,这使得这非常容易。 但后来我在库中发现了一个非常严重的bug ,所以我不想再使用它了。 我试着使用表视图的deleteRowsAtIndexPaths和insertRowsAtIndexPaths方法。 但是,如果我这样做: override func numberOfSectionsInTableView(tableView: UITableView) -> Int { return 1 } override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return 1 } override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let cell = UITableViewCell() cell.textLabel?.text = "Hello" […]

在iOS 8的Apple Status Bar上显示UIView

我知道有一些关于这方面的问题,但没有人帮助我处理我的具体问题。 我想在整个屏幕上方显示一个自定义模式,但我想保持Apple状态栏可见。 对于模态,我使用一个UIView调暗效果,另一个用于用户将与之交互的实际视图。 然后将整个模态作为子视图添加到当前视图中并显示在前面。 本质上,我试图复制UIAlertView的行为,除了自定义视图。 这是我的一些代码: var modalView:UIView = UIView(frame: self.view.window!.bounds) modalView.backgroundColor = UIColor.blackColor().colorWithAlphaComponent(0.66) modalView.addSubview(customView) self.view.window!.addSubview(modalView) modalView.window!.windowLevel = UIWindowLevelStatusBar + 1 self.bringSubviewToFront(modalView) 上面, customView是用户与之交互的UIView 。 这很好,但由于某种原因,即使状态栏的样式设置为LightContent,Apple状态栏上的文本也会消失。 从代码中可以看出,我不会触摸状态栏。 我试图让状态栏上的文字变暗,就像屏幕的其他部分一样,现在我被卡住了。 有没有人有任何见解我如何能得到所需的行为? 任何帮助将不胜感激!

代码为fb邀请不起作用

这是行动的代码 -(void)fnInvitefb { //Facebook Code NSString *facebookID = @"100000797858986"; NSDictionary *parameters = @{@"to":@"100000739625716" }; [FBWebDialogs presentRequestsDialogModallyWithSession:nil message:@"Test msg" title:@"Test Title" parameters:parameters handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error) { if(error) { NSLog(@"Some errorr: %@", [error description]); UIAlertView *alrt = [[UIAlertView alloc] initWithTitle:@"Invitiation Sending Failed" message:@"Unable to send inviation at this Moment, please make sure your are […]