Questions tagged «objective-c»

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


6
如何创建“选择器数组”
我正在使用iPhone SDK(3.0),并且试图创建一个选择器数组来在一个类中调用各种方法。 显然,我做错了(我认为@selector不被认为是一个类,因此将它们填充到NSArray中是行不通的)。 我试过了,但这显然是错误的。 是否有一种简单的方法来拥有这样的选择器数组?还是有更好的方法来遍历一组方法? selectors = [NSArray arrayWithObjects: @selector(method1), @selector(method2), @selector(method3), @selector(method4), @selector(method5), @selector(method6), @selector(method7), nil]; for (int i = 0; i < [selectors count]; i++) { if ([self performSelector:[selectors objectAtIndex:i]]) // do stuff; }



1
iOS中的Google Analytics(分析)SDK 3.0 _sqlite3链接器错误
我正在将Google Analytics(分析)SDK 3.0集成到我的项目中。但是在尝试构建项目时出现链接器错误。 如文档中所述,我已经在项目中链接了以下库, libGoogleAnalyticsServices.a AdSupport.framework CoreData.framework SystemConfiguration.framework libz.dylib 即使那样,我在构建项目时也会遇到以下错误, d: warning: directory not found for option '-L"/Users/....NameProject/Libraries/Google Analytics"' "_sqlite3_bind_blob", referenced from: -[TAGDataLayerPersistentStoreImpl writeEntriesToDatabase:expireTime:] in libGoogleAnalyticsServices.a(TAGDataLayerPersistentStoreImpl.o) "_sqlite3_bind_int", referenced from: -[TAGDataLayerPersistentStoreImpl deleteEntries:] in libGoogleAnalyticsServices.a(TAGDataLayerPersistentStoreImpl.o) "_sqlite3_bind_int64", referenced from: -[TAGDataLayerPersistentStoreImpl writeEntriesToDatabase:expireTime:] in libGoogleAnalyticsServices.a(TAGDataLayerPersistentStoreImpl.o) -[TAGDataLayerPersistentStoreImpl peekEntryIds:] in libGoogleAnalyticsServices.a(TAGDataLayerPersistentStoreImpl.o) .... 是什么导致这些错误?我有什么想念的吗? 感谢您的帮助。 解: 我通过将我的项目与libsqlite3.0库链接解决了。Google Analytics(分析)文档漏掉了提及链接此库的内容。希望这可以帮助。

2
Objective-C中的ivars和属性之间有什么区别
这三种在Objective-C中使用ivars和属性的方式在语义上有什么区别? 1。 @class MyOtherObject; @interface MyObject { } @property (nonatomic, retain) MyOtherObject *otherObj; 2。 #import "MyOtherObject.h" @interface MyObject { MyOtherObject *otherObj; } @property (nonatomic, retain) MyOtherObject *otherObj; 3。 #import "MyOtherObject.h" @interface MyObject { MyOtherObject *otherObj; }

8
在自动布局中将子视图的X居中会引发“未为约束做准备”
我有一个自定义的UIView子类,该子类正在通过笔尖初始化。 在中-awakeFromNib,我正在创建一个子视图,并尝试在其子视图中居中。 [self setInteralView: [[UIView alloc] init]]; [[self internalView] addConstraint: [NSLayoutConstraint constraintWithItem: [self internalView] attribute: NSLayoutAttributeCenterX relatedBy: NSLayoutRelationEqual toItem: self attribute: NSLayoutAttributeCenterX multiplier: 1 constant: 0]]; 这会中断,并导致以下输出: 2013-08-11 17:58:29.628 MyApp[32414:a0b] The view hierarchy is not prepared for the constraint: <NSLayoutConstraint:0xc1dcc80 UIView:0xc132a40.centerX == MyView:0xc1315a0.centerX> When added to a view, the constraint's …

15
AFNetworking发布请求
我是obj-c的新手,并且在我的某些项目中一直使用asihttp。当在asihttp中执行发布请求时,它是通过这种方式完成的。 ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; [request setPostValue:height forKey:@"user[height]"]; [request setPostValue:weight forKey:@"user[weight]"]; [request setDelegate:self]; [request startAsynchronous]; 带有代码示例的AFNetworking将如何做到这一点? 我已经让getJson getrequest在AFNetworking中工作了,但是此发布请求给了我一些问题。预先感谢您的帮助。


6
模态视图控制器-如何显示和关闭
在过去的一周中,我为解决如何显示和关闭多个视图控制器来解决此问题而烦恼不已。我创建了一个示例项目,并直接从项目中粘贴代码。我有3个视图控制器及其相应的.xib文件。MainViewController,VC1和VC2。我在主视图控制器上有两个按钮。 - (IBAction)VC1Pressed:(UIButton *)sender { VC1 *vc1 = [[VC1 alloc] initWithNibName:@"VC1" bundle:nil]; [vc1 setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal]; [self presentViewController:vc1 animated:YES completion:nil]; } 这将打开VC1,没有任何问题。在VC1中,我有另一个按钮应该打开VC2,同时关闭VC1。 - (IBAction)buttonPressedFromVC1:(UIButton *)sender { VC2 *vc2 = [[VC2 alloc] initWithNibName:@"VC2" bundle:nil]; [vc2 setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal]; [self presentViewController:vc2 animated:YES completion:nil]; [self dismissViewControllerAnimated:YES completion:nil]; } // This shows a warning: Attempt to dismiss from …

14
UITableView中的圆形UIImageView是否对性能没有影响?
我的UIImageView每个UITableView单元格上都有一个,用于显示远程图像(使用SDWebImage)。我已经QuartzCore对图像视图进行了一些图层样式设置,如下所示: UIImageView *itemImageView = (UIImageView *)[cell viewWithTag:100]; itemImageView.layer.borderWidth = 1.0f; itemImageView.layer.borderColor = [UIColor concreteColor].CGColor; itemImageView.layer.masksToBounds = NO; itemImageView.clipsToBounds = YES; 所以现在我有一个50x50的正方形,带有淡淡的灰色边框,但是我想使其变为圆形而不是正方形。该应用程序Hemoglobe在表格视图中使用圆形图像,这就是我想要实现的效果。但是,我不想使用cornerRadius,因为那样会使滚动FPS降低。 这是Hemoglobe圆形的UIImageViews: 有什么办法可以达到这种效果?谢谢。


3
有没有一种方法可以在NSString stringWithFormat中指定参数位置/索引?
C#的语法允许您以字符串格式说明符指定参数索引,例如: string message = string.Format("Hello, {0}. You are {1} years old. How does it feel to be {1}?", name, age); 您可以多次使用参数,也可以省略使用时提供的参数。另一个问题提到了C / C ++的相同格式%[index]$[format],例如%1$i。我无法让NSString完全遵守此语法,因为当从格式中省略参数时,它确实表现良好。以下内容无法按预期方式工作(EXC_BAD_ACCESS,因为它尝试将age参数作为NSObject *取消引用): int age = 23; NSString * name = @"Joe"; NSString * message = [NSString stringWithFormat:@"Age: %2$i", name, age]; 仅当格式中没有缺少参数时才尊重位置参数(这似乎是一个奇怪的要求): NSString * message = [NSString stringWithFormat:@"Age: …

5
在主线程上调用方法?
首先,我正在为iPhone编写代码。我需要能够在不使用的情况下在主线程上调用方法performSelectorOnMainThread。我不想使用的performSelectorOnMainThread原因是,当我尝试为单元测试创​​建模拟程序时,它会引起问题。 [self performSelectorOnMainThread:@Selector(doSomething) withObject:nil]; 问题是我的模拟对象知道如何调用,doSomething但不知道如何调用performSelectorOnMainThread。 那么有什么解决办法吗?


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.