Tag: objective c

NSOperation在iPhone上

我一直在寻找一些具体的情况,当在NSOperation上的NSOperation是一个理想的工具,在应用程序中使用。 据我的理解,这是一个围绕你自己的threaded代码的封装。 我还没有看到任何苹果演示应用程序使用它,我想知道如果我错过了一个伟大的工具,而不是使用NSThread 。 这里的理想解决scheme是描述NSOperation的用例场景,以及如何使用它来解决您的问题。

用xib创build一个可重用的UIView(并从storyboard中加载)

好的,在StackOverflow上有很多关于这个的post,但没有一个特别清楚解决scheme。 我想创build一个自定义的UIView与伴随的xib文件。 要求是: 没有单独的UIViewController – 一个完全独立的类 在课堂上的奥特莱斯让我设置/获取视图的属性 我目前的做法是: 覆盖-(id)initWithFrame: -(id)initWithFrame:(CGRect)frame { self = [[[NSBundle mainBundle] loadNibNamed:NSStringFromClass([self class]) owner:self options:nil] objectAtIndex:0]; self.frame = frame; return self; } 使用-(id)initWithFrame:以编程方式实例化-(id)initWithFrame:在我的视图控制器中 MyCustomView *myCustomView = [[MyCustomView alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height)]; [self.view insertSubview:myCustomView atIndex:0]; 这工作正常(虽然从来没有调用[super init] ,只是设置对象使用加载的笔尖的内容似乎有点怀疑 – 有build议在这种情况下添加子视图也工作正常)。 不过,我希望能够从storyboard中实例化视图。 所以我可以: 在故事板的父视图中放置一个UIView 将其自定义类设置为MyCustomView 覆盖-(id)initWithCoder: – 我见过的代码最常用的模式如下: -(id)initWithCoder:(NSCoder *)aDecoder { self […]

如何在Xcode中定义一个预处理符号

是否可以通过在Xcode项目中设置属性来设置条件编译的符号? 我的目标是创build一个可供所有文件使用的符号,而不必使用import / include,这样一组公共类就可以在某些项目中有特殊的行为。 像以下,但用我自己的符号。 #if TARGET_IPHONE_SIMULATOR … #endif

如何通过NSNotificationCenter传递对象

我试图从我的应用程序委托传递一个对象到另一个类的通知接收器。 我想传递整数messageTotal 。 现在我有: 在接收器中: – (void) receiveTestNotification:(NSNotification *) notification { if ([[notification name] isEqualToString:@"TestNotification"]) NSLog (@"Successfully received the test notification!"); } – (void)viewDidLoad { [super viewDidLoad]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(dismissSheet) name:UIApplicationWillResignActiveNotification object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(receiveTestNotification:) name:@"eRXReceived" object:nil]; 在正在进行通知的课程中: [UIApplication sharedApplication].applicationIconBadgeNumber = messageTotal; [[NSNotificationCenter defaultCenter] postNotificationName:@"eRXReceived" object:self]; 但是我想将对象messageTotal传递给另一个类。

与ProgressView相结合的UISlider

有一个苹果公司的方式来获得一个ProgressView的UISlider。 这是许多stream应用程序,例如本地quicktimeplayer或youtube使用。 (可以肯定的是,我只对可视化感兴趣) 欢呼西蒙

从UIPageViewController中移除一个视图控制器

很奇怪,没有简单的方法来做到这一点。 考虑以下情况: 你有一页页面视图控制器。 添加另一个页面(共2)并滚动到它。 我想要的是,当用户滚动回到第一页时,第二页现在被移除和释放,并且用户不能再滑回到该页面。 我已经尝试过渡完成后删除视图控制器作为子视图控制器,但它仍然让我滚动回空页面(它不“调整”页面视图) 我想做什么?

UIImageView上的UIGestureRecognizer

我有一个UIImageView ,我想要能够调整和旋转等 UIGestureRecognizer可以添加到UIImageView吗? 我想要添加一个旋转和捏认识到UIImageView将在运行时创build。 如何添加这些识别器?

在Objective-C中转换为绝对值

如何在Objective-C中将负数转换为绝对值? 即 -10 变 10?

为什么masksToBounds = YES防止CALayer阴影?

用下面的代码片段,我给一个UIView添加了阴影效果。 哪个工作得很好。 但只要我把视图的masksToBounds属性设置为YES 。 投影效果不再呈现。 self.myView.layer.shadowColor = [[UIColor blackColor] CGColor]; self.myView.layer.shadowOpacity = 1.0; self.myView.layer.shadowRadius = 10.0; self.myView.layer.shadowOffset = CGSizeMake(0.0f, 0.0f); self.myView.layer.cornerRadius = 5.0; self.myView.layer.masksToBounds = YES; // <– This is causing the Drop shadow to not be rendered UIBezierPath *path = [UIBezierPath bezierPathWithCurvedShadowForRect:self.myView.bounds]; self.myView.layer.shadowPath = path.CGPath; self.myView.layer.shouldRasterize = YES; 你有什么想法吗?

如何在核心数据中存储图像

我是iOS新手。 我一直在试图制作一个应用程序,将相机捕获的图像存储到CoreData 。 我现在知道如何存储像NSString s, NSDate和其他types的数据,但努力存储图像。 我已经阅读了很多文章,说你必须把它写入磁盘并写入一个文件,但我似乎无法理解它。 以下代码是我用来将其他数据存储到核心数据的代码。 – (IBAction)submitReportButton:(id)sender { UrbanRangerAppDelegate *appDelegate = [[UIApplication sharedApplication] delegate]; managedObjectContext = [appDelegate managedObjectContext]; NSEntityDescription *entity = [NSEntityDescription entityForName:@"PotholesDB" inManagedObjectContext:appDelegate.managedObjectContext]; NSManagedObject *newPothole = [[NSManagedObject alloc]initWithEntity:entity insertIntoManagedObjectContext:managedObjectContext]; [newPothole setValue:self.relevantBody.text forKey:@"relevantBody"]; [newPothole setValue:self.subjectReport.text forKey:@"subjectReport"]; [newPothole setValue:self.detailReport.text forKey:@"detailReport"]; // [newPothole setValue:self.imageView forKey:@"photo"]; NSDate *now = [NSDate date]; //NSLog(@"now : %@", now); […]