Tag: cocoa touch

如何通过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传递给另一个类。

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

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

iPhone正确使用应用程序委托

我希望能够通过我的应用程序中的任何地方引用某些状态/对象。 例如,用户login到他们的应用程序,我需要调用Web服务并检索用户信息。 然后,我希望能够从应用程序的任何地方访问这些信息,如下所示: myAppDelegate *delegate = [[UIApplication sharedApplication] delegate]; user = delegate.u; 在应用程序委托中将实例variables设置为User对象,并在需要时从其中引用该对象,这是一种糟糕的方式吗? 我通常在用户login时设置它。 希望听到专业人士如何处理这一个。

在Objective-C中检查空string的正确方法是什么?

我在我的iPhone应用程序中使用这个 if (title == nil) { // do something } 但是会引发一些exception,控制台显示标题是“(null)”。 所以我现在使用这个: if (title == nil || [title isKindOfClass:[NSNull class]]) { //do something } 有什么区别,什么是确定一个string是否为空的最好方法?

在iOS应用程序中如何存储全局常量?

我的iOS应用程序中的大多数模型都会查询Web服务器。 我想有一个configuration文件存储服务器的基本URL。 它看起来像这样: // production // static NSString* const baseUrl = "http://website.com/" // testing static NSString* const baseUrl = "http://192.168.0.123/" 通过评论一行或另一行,我可以立即改变我的模型指向哪个服务器。 我的问题是,在iOS中存储全局常量的最佳做法是什么? 在Android编程中,我们有这个内置的string资源文件 。 在任何活动 (相当于一个UIViewController ),我们可以检索这些string常量: String string = this.getString(R.string.someConstant); 我想知道如果iOS SDK有一个类似的地方来存储常量。 如果没有,Objective-C的最佳做法是什么?

像使用NSSortDescriptor的NSInteger一样对NSString值进行sorting

我创build了一个sorting描述符来sorting来自我的服务器的plist响应。 这与sorting键的值高达9的效果很好。有超过10个项目,我看到突变结果sorting键排列顺序= 1,10,11,2,3,4,5,6,7,8,9 NSSortDescriptor *aSortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"sort" ascending:YES]; self.myList = [NSMutableArray arrayWithArray:[unsortedList sortedArrayUsingDescriptors:[NSArray arrayWithObject:aSortDescriptor]]]; 如何按照1,2,3,4,5,6,7,8,9,10,11的顺序排列?

CoreData关系错误?

我有一个与单位有“一对多”关系的订单。 当我尝试按顺序login单元(NSSet)时,出现错误: NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; NSEntityDescription *entity = [NSEntityDescription entityForName:@"Order" inManagedObjectContext:mainContext]; [fetchRequest setEntity:entity]; NSArray *fetchedObjects = [mainContext executeFetchRequest:fetchRequest error:nil]; for (Order *order in fetchedObjects) { NSLog(@"%@", [order units]); break; } [fetchRequest release]; 结果是: Relationship 'units' fault on managed object (0x6d9dd00) <Order: 0x6d9dd00> (entity: Order; id: 0x6d88e40 <x-coredata://97A3F3D5-ABA7-499A-A460-5E25CF49C528/Order/p1> ; data: { composition = […]

如何以编程方式拍摄iPhone的截图?

在目标C中是否可以使用屏幕截图并将其存储在UIImage中。

如何从UIActivityViewController中排除Notes和提醒应用程序?

我正在创build一个UIActivityViewController并将String和URL传递给它。 这显然,configurationUIActivityViewController使用一些项目,我想排除(我的目标是共享有关我的应用程序的信息)。 我设法排除了大量系统提供的活动(如“添加到阅读列表”),方法是设置适当的excludedActivityTypes 。 但是,我无法排除提醒和Notes应用程序。 有人可以提出一种方法吗? 这些应用程序在列表中显示第3和第4,因此除非用户滚动,否则Twitter和Facebook将不可见。

声音不工作在iPhone模拟器?

不知何故,我的iPhone模拟器无法播放声音。 首先我正在使用AudioServicesPlaySystemSound()停止工作的应用程序..我花了一段时间debugging这个,但声音仍然在iPhone上运行在设备上的应用程序。 我得到了与其他iPhone应用程序相同的结果,如示例Crash Landing应用程序。 我无法在模拟器或Xcode首选项中的任何位置find声音设置。 我已经尝试通过“重置内容和设置”菜单项重置模拟器无济于事。