草庐IT

Meta-objects

全部标签

ios - Objective-C:在违反可空性注释时强制执行编译错误

背景我们一直在开发公共(public)动态iOS/macOS框架。该框架是用Objective-C编写的,但它与Swift完全兼容。最近,我们更改了一个公共(public)API方法的可空性注释:来自-(void)setServer:(nullableABCLocation*)location;到-(void)setServer:(nonnullABCLocation*)location;,因此开发人员需要创建[ABCLocationdefault]实例并将其传递给新的API。问题现在,我们关心的是,如何强制/通知开发人员围绕我们的新API更改他们现有的代码?将API与Swift一起使

ios - 尝试使用 PHLivePhotoView objective-c 显示实时照片时图像元数据无效

我正在尝试在iOS设备上使用objective-c加载jpg图像和mov文件以显示实时照片,我制作了以下代码片段在viewDidLoad函数中执行此操作:-(void)viewDidLoad{[superviewDidLoad];PHLivePhotoView*photoView=[[PHLivePhotoViewalloc]initWithFrame:self.view.bounds];NSURL*imageUrl=[[NSBundlemainBundle]URLForResource:@"livePhoto"withExtension:@"jpg"];NSURL*videoUrl=

ios - objective-c metadataOutputRectOfInterestForRect 返回 {{0, 0}, {0, 0}}

已更新!!!我正在使用metadataOutputRectOfInterestForRect转换矩形以便使用AVCaptureMetadataOutputrectOfInterest。但是当转换为CGRect时,它总是返回0。这是我的代码:NSError*error;AVCaptureDevice*captureDevice=[AVCaptureDevicedefaultDeviceWithMediaType:AVMediaTypeVideo];AVCaptureDeviceInput*input=[AVCaptureDeviceInputdeviceInputWithDevice:c

ios - 检查 Objective-C 中的日期格式

我收到一个包含日期的字符串。我想检查它是否具有“dd/MM/yyyy”格式。现在我正在使用我在同一页面中找到的代码:NSDate*date=[dateFormatterdateFromString:dateString];if(date==nil){correctFormat=false;}它适用于某些情况,但例如,如果我输入“22-12-1996”而不是“22/12/1996”,它仍然会创建日期。还有其他一致的方式吗? 最佳答案 NSDateFormatter处理字符串日期的格式。InstancesofNSDateFormatte

ios - 在 .h 文件中声明 NSString - Objective c

这听起来像是一个愚蠢的问题,但我无法在网上轻松找到任何解决方案。如何在.h文件中声明一个NSString?我试过这个:@property(nonatomic,retain)NSString*DATABASE_NAME;但是我得到一个错误:Expectedmembernameor';'afterdeclaration这里有什么问题?编辑我的头文件:@interfaceGlobalVariables:NSObject@propertyBOOLMAP_SATELLITE_VIEW;@property(nonatomic,retain)NSString*DATABASE_NAME;+(Glob

ios - "Assigning retained object to weak property"与初始化?

在玩ARC时,我注意到当我的字符串较弱时:@property(weak,nonatomic)NSString*myString;然后如果我要这样做:self.myString=[[NSStringalloc]init];甚至[[NSStringalloc]initWithString:@""]Xcode立即警告我“将保留的对象分配给弱属性;对象将在分配后释放”。虽然我能理解,因为它的引用计数是0,为什么它可以在没有警告的情况下工作:self.myString=@"";它对ARC有何影响? 最佳答案 因为当你有弱属性时,ARC不会增加

ios - 检查 Objective-c 中的时间?

如何获取hh:mm格式的当前时间?我需要能够区分上午和下午,并比较当前时间和第二次时间。我确定这是一个愚蠢的功能,但我似乎无法弄明白。 最佳答案 当前日期和日期比较:NSDate*now=[NSDatedate];NSDate*mile=[[NSDatealloc]initWithString:@"2001-03-2410:45:32+0600"];NSComparisonResultresult=[nowcompare:mile];NSLog(@"%@",now);NSLog(@"%@",mile);switch(result){

objective-c - UIAlertView clickedButtonAtIndex 未被调用

这就是我创建警报的方式:UIAlertView*dialog=[[UIAlertViewalloc]init];dialog.delegate=self;//someoptionsaField=[[UITextFieldalloc]initWithFrame:CGRectMake(20.0,45.0,245.0,25.0)];[aFieldsetBackgroundColor:[UIColorwhiteColor]];[dialogaddSubview:appkeyField];[dialogshow];[aFieldrelease];但是-(void)alertView:(UIAle

objective-c - 通用 iOS 应用程序中的 iPad/iPhone 应用程序代表有什么意义?

我一直在想我应该使用这些类做什么。我认为这是在设备上设置适当的主视图。默认情况下,这些类中只添加了一个dealloc方法,所以我想我在-init方法的*AppDelegate_iPhone类中设置了我的iPhoneView,但无论我做什么,我都无法更改背景颜色或添加subview在使用此类的主窗口上。也许我应该将此类用于其他目的,而只使用普通的AppDelegate为每个设备设置我的View层次结构? 最佳答案 您可以在AppDelegate中做iPhone和iPad的共同点,在*AppDelegate_iPhone/iPad中做不

iphone - 如何将 unicode 转义码转换为 Objective C 中的字符(在 iPhone 上)

我有一个包含unicode转义码的字符串,例如。@"D\u017cem"(\u017c是ż的代码)。我想将该字符串转换为包含实际字符的字符串。在这个例子中是@"Dżem"。SDK或库中是否有任何方法可以进行此类替换并在iPhone上运行?(当然我自己也可以替换,一个一个换一个字符,但是比较麻烦) 最佳答案 AccordingtoApple,Itisnotsafeistoincludehigh-bitcharactersinyoursourcecode请注意,“通用字符名称”\u017c在编译时被替换为实现定义的值,该值实际上是UTF