Questions tagged «objective-c»

仅在有关Objective-C功能或取决于语言代码的问题上使用此标记。标签[cocoa]和[cocoa-touch]应该用于询问Apple的框架或类。使用相关标签[ios],[macos],[apple-watch]和[tvos]来解决特定于这些平台的问题。

5
在Objective-C类中导入Swift协议
我尝试将名为Swift的协议导入到名为AnalyticProtocol的Objective-C类中AnalyticFactory。 protocol AnalyticProtocol { } 我从一个现有的Objective-C项目开始(我没有使用xCode创建一个新的Swift项目,也没有发现如何在xCode 6中将我的Objective-C项目配置为Swift项目)。 在我的Swift文件中,我包含了一个.h名为的文件,MyProjectName-Swift.h但是编译器告诉我一个错误,告诉我它不存在。因此,我创建了一个.h名为的文件,该文件MyProjectName-Swift.h实际上是空的(我不知道应该在里面放什么)。 他们在Apple文档中说,我必须在.h文件MyProjectName-Swift.h中包含命名的.m文件。但是我需要不将其包括在.m文件中,而是将其包括在文件中.h。这可能有问题吗? 当我尝试编译时,出现以下错误:: 0:错误:xxxAnalyticFactory.h:39:找不到“ AnalyticProtocol”的协议声明 并包含以下代码: @interface AnalyticFactory : NSObject { Class<AnalyticProtocol> _analyticProtocolClass; // The type of the analytic class currently used. } 我想我不太了解如何将Swift协议导入Objective-C类。 有人在我做的事情中看到错误吗?
115 objective-c  swift 


18
如何使用iOS轻松调整大小/优化图像大小?
我的应用程序正在从网络下载一组图像文件,并将它们保存到本地iPhone磁盘。其中一些图像尺寸很大(例如,宽度大于500像素)。由于iPhone甚至没有足够大的显示屏来显示原始尺寸的图像,因此我计划将图像调整为较小的尺寸以节省空间/性能。 另外,其中一些图像是JPEG,因此不会保存为通常的60%质量设置。 如何使用iPhone SDK调整图片的大小,以及如何更改JPEG图像的质量设置?

5
如何使用Objective-C解析JSON?
我是iPhone新手。谁能告诉我分析数据并获取活动详细信息,名字和姓氏的步骤? { "#error": false, "#data": { "": { "activity_id": "35336", "user_id": "1", "user_first_name": "Chandra Bhusan", "user_last_name": "Pandey", "time": "1300870420", "activity_details": "Good\n", "activity_type": "status_update", "photo_url": "http://184.73.155.44/hcl-meme/QA_TEST/sites/default/files/pictures/picture-1627435117.jpg" }, "boolean": "1", "1": { "1": { "photo_1_id": "9755" }, "activity_id": "35294", "album_name": "Kalai_new_Gallery", "user_id": "31", "album_id": "9754", "user_first_name": "Kalaiyarasan", "user_last_name": "Balu", "0": { "photo_0_id": …


14
如果没有“表视图”结果,则在屏幕上显示“无结果”
我有一个tableview,有时可能没有任何结果要列出,因此如果没有结果(标签或一个表视图单元格?),我想说一句“无结果”。 有最简单的方法吗? 我会尝试label在结果tableview之后隐藏一个,然后根据结果隐藏两者之一,但是由于我使用的是a TableViewController而不是普通的,因此ViewController我不确定这有多聪明或可行。 我也使用Parse和子类化为PFQueryTableViewController: @interface TableViewController : PFQueryTableViewController 我可以提供所需的任何其他详细信息,请告诉我! TableViewController 故事板中的场景: 编辑: Per Midhun MP,这是我正在使用的代码 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { NSInteger numOfSections = 0; if ([self.stringArray count] > 0) { self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine; numOfSections = 1; //yourTableView.backgroundView = nil; self.tableView.backgroundView = nil; } else { UILabel *noDataLabel = [[UILabel alloc] …

6
从IOS上的UIView将图像保存到应用程序文档文件夹
我有一个UIImageView,它允许用户放置并保存图像,直到可以保存为止。问题是,我不知道如何实际保存和检索放置在视图中的图像。 我已经将图像检索并放置在UIImageView中,如下所示: //Get Image - (void) getPicture:(id)sender { UIImagePickerController *picker = [[UIImagePickerController alloc] init]; picker.delegate = self; picker.allowsEditing = YES; picker.sourceType = (sender == myPic) ? UIImagePickerControllerSourceTypeCamera : UIImagePickerControllerSourceTypeSavedPhotosAlbum; [self presentModalViewController:picker animated:YES]; [picker release]; } - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage (UIImage *)image editingInfo:(NSDictionary *)editingInfo { myPic.image = image; [picker dismissModalViewControllerAnimated:YES]; } …

3
最佳实践-您自己的项目/应用程序的NSError域和代码
之前有一篇SO帖子,关于为您自己的框架设置错误域,但是关于为您自己的项目/应用设置错误域和自定义错误代码的最佳实践是什么? 例如,假设您正在使用具有大量验证的Core Data密集型应用程序,那么您应该坚持使用“现成的” Core Data错误代码(例如NSManagedObjectValidationErrorfrom CoreDataErrors.h),还是应该创建自己的错误代码MyAppErrors.h并使用更具特异性(即MyAppValidationErrorInvalidCombinationOfLimbs? 创建一个自定义错误域和一组错误代码可能会极大地使您的代码歧义化,但是维护起来是否过多的开销,是否需要担心错误代码编号冲突?还是这里还有其他问题?

25
链接器命令失败,退出代码为1(使用-v查看调用),Xcode 8,Swift 3
我无法摆脱这个错误! 我已经尝试过各种方法,例如清除“派生数据”(“首选项”->“位置”->单击灰色箭头以在Finder中打开“派生数据”文件夹->右键单击,移至回收站),清理项目(CMD + Shift + K或“产品” ->清理),更新迦太基和依赖项,检查StackOverflow上的其他答案(主要是在“构建设置/阶段”中进行调整),并从github重新克隆应用程序,等等。 同一项目可在我的协作者计算机上工作。 编辑:从当前最高评价的答案,我能够进一步调试...虽然我仍然不确定如何解决。好像我在项目中有两次东西?我看了看,找不到任何东西出现两次! 这是日志的图片:

8
我如何从NSDate获得小时和分钟?
在我的应用程序中,我需要分别获取小时和分钟: NSString *currentHour=[string1 substringWithRange: NSMakeRange(0,2)]; int currentHourInNumber=[currentHour intValue]; 考虑string1包含11:59:13 AM来自日期选择器的内容。 在这里,如果我使用上面的代码,则大于9 NSMakeRange(0,1)可以获取小时。否则,我需要更改以获取1到9之间的小时。 是否有获取小时,分钟等的方法? 在此先感谢您提供示例代码。
113 ios  objective-c  nsdate  hour 

18
找不到体系结构i386的符号
尝试使用Xcode进行编译时,出现以下错误: **Ld /Users/doronkatz/Library/Developer/Xcode/DerivedData/iKosher-bphnihrngmqtkqfgievrrumzmyce/Build/Products/Debug-iphonesimulator/iKosher.app/iKosher normal i386 cd /Users/doronkatz/Sites/xCode/iKosher setenv MACOSX_DEPLOYMENT_TARGET 10.6 setenv PATH "/Xcode4/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Xcode4/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Xcode4/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Xcode4/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/Users/doronkatz/Library/Developer/Xcode/DerivedData/iKosher-bphnihrngmqtkqfgievrrumzmyce/Build/Products/Debug-iphonesimulator -L/Users/doronkatz/Sites/xCode/iKosher -F/Users/doronkatz/Library/Developer/Xcode/DerivedData/iKosher-bphnihrngmqtkqfgievrrumzmyce/Build/Products/Debug-iphonesimulator -filelist /Users/doronkatz/Library/Developer/Xcode/DerivedData/iKosher-bphnihrngmqtkqfgievrrumzmyce/Build/Intermediates/iKosher.build/Debug-iphonesimulator/iKosher.build/Objects-normal/i386/iKosher.LinkFileList -mmacosx-version-min=10.6 -all_load -ObjC -Xlinker -objc_abi_version -Xlinker 2 -lz -framework Security -framework CFNetwork -framework CoreData -framework Foundation -framework UIKit -framework CoreGraphics -framework QuartzCore -o /Users/doronkatz/Library/Developer/Xcode/DerivedData/iKosher-bphnihrngmqtkqfgievrrumzmyce/Build/Products/Debug-iphonesimulator/iKosher.app/iKosher Undefined symbols for …
113 objective-c  ios  xcode4 

9
导航栏出现在带有新iOS7 SDK的视图上方
CGRect cgRect1 = [[UIScreen mainScreen] applicationFrame]; UISearchBar *mySearchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0, 0, cgRect.size.width, 40)]; mySearchBar.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight ; UITableView *myTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 40, cgRect.size.width, cgRect.size.height-40)]; myTableView.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight; [self.view addSubview:mySearchBar]; [self.view addSubview:myTableView]; 在早期版本中,它可以正常工作。搜索栏出现在statusbar和导航栏下方。该tableview是出现在搜索栏下方 但是,当我在该菜单上运行时Xcode 5 sdk iOS 7,搜索栏不可见(我认为它位于状态栏和导航栏下方),并且导航栏也出现在表格视图上方。 可以通过iOS 7稳定的发行版进行修复吗? 还是我的编码问题? 还是应该通过添加的y (y = statubar height + …
113 iphone  ios  objective-c  ipad  ios7 

5
使用自动布局在UICollectionView中指定单元格的一维
在iOS 8中,UICollectionViewFlowLayout支持根据单元格自身的内容大小自动调整其大小。这将根据其内容在宽度和高度上调整单元格的大小。 是否可以为所有单元格的宽度(或高度)指定固定值,并允许其他尺寸调整大小? 对于一个简单的示例,请考虑单元格中的多行标签,将其放置在单元格的侧面有约束。多行标签可以用不同的方式调整大小以容纳文本。单元格应填充集合视图的宽度,并相应地调整其高度。而是随意调整单元格的大小,并且当单元格大小大于集合视图的不可滚动尺寸时,甚至会导致崩溃。 iOS 8引入了该方法。systemLayoutSizeFittingSize: withHorizontalFittingPriority: verticalFittingPriority:对于集合视图中的每个单元格,布局在单元格上调用此方法,并传入估计的大小。对我来说有意义的是在单元格上覆盖此方法,传递给定的大小,并将水平约束设置为required,将低优先级设置为纵向约束。这样,水平尺寸固定为布局中设置的值,垂直尺寸可以灵活。 像这样: - (UICollectionViewLayoutAttributes *)preferredLayoutAttributesFittingAttributes:(UICollectionViewLayoutAttributes *)layoutAttributes { UICollectionViewLayoutAttributes *attributes = [super preferredLayoutAttributesFittingAttributes:layoutAttributes]; attributes.size = [self systemLayoutSizeFittingSize:layoutAttributes.size withHorizontalFittingPriority:UILayoutPriorityRequired verticalFittingPriority:UILayoutPriorityFittingSizeLevel]; return attributes; } 但是,用这种方法返回的大小是完全奇怪的。我对这种方法的文档非常不清楚,并提到使用UILayoutFittingCompressedSize UILayoutFittingExpandedSize仅代表零大小和相当大的常数的常量。 size此方法的参数真的只是传递两个常量的一种方法吗?有没有办法实现我期望的行为以获得给定尺寸的适当高度? 替代解决方案 1)添加将为单元指定特定宽度的约束以实现正确的布局。这是一个较差的解决方案,因为应该将该约束设置为它没有安全引用的单元格收集视图的大小。在配置单元格时可以传递该约束的值,但这似乎完全违反直觉。这也很尴尬,因为直接将约束添加到单元格或其内容视图会导致很多问题。 2)使用表格视图。表格视图开箱即用,因为单元格具有固定的宽度,但是这不能适应其他情况,例如iPad布局中具有固定宽度的单元格在多列中。

6
去ARC还是不去ARC?优缺点都有什么?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 改善这个问题 由于我目前正在处理的项目中的大多数代码都是在iOS 5.0之前编写的,因此我尚未使用ARC。 我只是在想,不手动保留/释放(由此带来的结果可能是更可靠的代码)的便利是否超过了使用ARC的任何“成本”?您对ARC有什么经验,您会推荐吗? 所以: ARC可为项目带来多少收益? ARC是否具有Java垃圾回收这样的成本? 您是否一直在使用ARC?如果是,到目前为止,您是如何找到它的?

6
iOS 7样式的模糊视图
是否有人知道将复制iOS7样式模糊视图的任何控件。 我假设可以存在某种UIView子类来复制行为。 我说的是这些类型的视图,它们会使背景变得非常模糊,以至于它们从背景视图中产生拉动效果。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.