Tag: objective c

播放系统声音而不导入自己的

是否有可能播放已有的系统声音而不导入自己的?

如何使用Apple iPhone SDK获取UIKeyboard大小

有没有办法以编程方式获得UIKeyboard大小。 高度216.0f,景观高度162.0f。 以下似乎被depricated。 有没有任何警告的方式在3.0 iPhone操作系统SDK和4.0 iPhone操作系统的SDK都可以这样做.. CGSize keyBoardSize = [[[note userInfo] objectForKey:UIKeyboardBoundsUserInfoKey]CGRectValue].size; 谢谢,Tharindu

使用Facebook iOS SDK在用户的墙上张贴照片

我试图从相机上传照片到用户的Facebook墙上。 我不完全确定正确的策略是什么,但是从阅读的angular度来看,似乎要做的是将照片上传到相册,然后有人在墙上张贴该相册/照片的链接。 理想情况下,这将涉及对话,但从我可以告诉这是不可能的。 我已经设法上传一张照片到一个相册,并获得该照片的ID,但我不知道该怎么做之后。 任何人都可以提供一些简单的代码来实现这一目标? 奖金问题:是否有可能将照片发布到应用程序墙上(或改为)? 编辑:graphicsAPI是可取的,但在这个阶段的任何工作是好的。

什么时候关联的对象被释放?

我通过关联引用将对象B附加到对象A.对象B通过KVO观察对象A的一些属性。 问题是对象B似乎在对象A 之后被释放,意味着它为时已晚,不能将自己作为对象A的KVO观察者移除。我知道这是因为我得到NSKVODeallocateBreakexception,然后EXEC_BAD_ACCESS在对象B的dealloc中崩溃。 有谁知道为什么对象B在OBJC_ASSOCIATION_RETAIN的对象A之后被释放? 关联对象是否在释放后被释放? 他们得到autoreleased? 有谁知道一种方法来改变这种行为? 我试图通过类添加一些东西到一个类,所以我不能覆盖任何现有的方法(包括dealloc),我不想特意搅乱。 在对象A被取消分配之前,我需要一些方法去关联和释放对象B. 编辑 – 这是我正在努力工作的代码。 如果关联的对象在UIImageView完全释放之前被释放,这将全部工作。 我看到的唯一的解决scheme是在我自己的dealloc方法中debugging,然后调用原来的方法来调用它。 那变得非常混乱。 ZSPropertyWatcher类的要点是KVO需要一个标准的callback方法,而且我不想replaceUIImageView,万一它自己使用。 的UIImageView + Loading.h @interface UIImageView (ZSShowLoading) @property (nonatomic) BOOL showLoadingSpinner; @end 的UIImageView + Loading.m @implementation UIImageView (ZSShowLoading) #define UIIMAGEVIEW_SPINNER_TAG 862353453 static char imageWatcherKey; static char frameWatcherKey; – (void)zsShowSpinner:(BOOL)show { if (show) { UIActivityIndicatorView *spinnerView = (UIActivityIndicatorView *)[self viewWithTag:UIIMAGEVIEW_SPINNER_TAG]; if […]

在Objective-C中放置星号

我刚刚开始学习Objective-C,来自VB .Net和C#.Net背景。 我理解指针的用法,但是在Objective-C的例子中,我看到星号被放置在几个不同的地方,并且尽可能地search,我还没有find答案。 我尝试的每一个search都会提供关于指针的各种解释(我真的不需要),但没有提到星号不同位置的原因/效果。 以下是我见过的一些例子: NSString *string; NSString * string; (NSString *) string; NSString* string; 星号的这些不同的位置是什么意思? 我相信这是一个简单的答案,但是令人沮丧的是无法在任何Apple教程和参考文档中find它,或者到目前为止在线。 有人能结束我的痛苦,并回答这个令人困惑的问题吗? 谢谢!

CaptiveNetwork弃用后,如何在iOS9中获取Wifi SSID,并且呼叫Wifi名称已被阻止

直到今天,我使用CaptiveNetwork接口来显示当前连接的Wifi的名称。 iOS 9预发布参考文件已经提到,CaptiveNetwork方法现在已经被剥夺了,但是它们仍然在开始工作。 苹果似乎已经阻止了这个电话的最新版本(也许是由于隐私问题?)。 有没有其他的方式来获得当前的Wifi的名称? 这是我直到今天获得SSID的方式,但现在你只能得到零: #import <SystemConfiguration/CaptiveNetwork.h> NSString *wifiName = nil; NSArray *interFaceNames = (__bridge_transfer id)CNCopySupportedInterfaces(); for (NSString *name in interFaceNames) { NSDictionary *info = (__bridge_transfer id)CNCopyCurrentNetworkInfo((__bridge CFStringRef)name); if (info[@"SSID"]) { wifiName = info[@"SSID"]; } }

如何定义一个全局variables,可以在我的应用程序的任何地方访问?

可能重复: 全局intvariables目标c 我想创build一个全局variables。 我想在任何地方访问这个variables。 Java的等价物: static var score:int = 0; 例如,如果我将一个全局variables定义到Game类中。 如何访问这个全局variables? Game.score ?

NSMutableDictionary线程安全

我在使用NSMutableDictionary遇到了线程安全问题。 主线程是从NSMutableDictionary中读取数据,其中: 关键是NSString 值是UIImage asynchronous线程正在向上面的字典写入数据(使用NSOperationQueue ) 如何使上述字典线程安全? 我应该使NSMutableDictionary属性atomic ? 还是需要进行其他更改? @property(retain) NSMutableDictionary *dicNamesWithPhotos;

弱引用的NSArray(__unsafe_unretained)到ARC下的对象

我需要将弱引用存储到NSArray中的对象,以防止保留周期。 我不确定使用正确的语法。 这是正确的方法吗? Foo* foo1 = [[Foo alloc] init]; Foo* foo2 = [[Foo alloc] init]; __unsafe_unretained Foo* weakFoo1 = foo1; __unsafe_unretained Foo* weakFoo2 = foo2; NSArray* someArray = [NSArray arrayWithObjects:weakFoo1, weakFoo2, nil]; 请注意,我需要支持iOS 4.x ,因此__unsafe_unretained而不是__weak 。 编辑 (2015-02-18): 对于那些想要使用真正的__weak指针(而不是__unsafe_unretained ),请检查出这个问题,而不是: ARC

拆分一个NSString来访问一个特定的部分

我有这样一个string: @"10/04/2011" ,我想只保存在另一个string中的“10”。 我怎样才能做到这一点?