天道酬勤,学无止境

cocoa-touch

Automatically instantiate singleton at launch

问题 我有一个我想在应用程序启动时实例化的单例Session 。 我怎么做? 我正在使用这种方法来创建单例:http://cocoawithlove.com/2008/11/singletons-appdelegates-and-top-level.html 回答1 在您的didFinishLaunchingWithOptions方法的第一行 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [YourSingletonClass class]; // ADD THIS LINE 它将触发你的单例类中的initialize方法初始化 + (void) initialize { _innerInstance = [[YourSingletonClass alloc] init]; } 回答2 If you access the singleton in the applicationDidFinishLaunching: method, they will should get set up.

2022-05-16 18:39:07    分类:技术分享    iphone   objective-c   cocoa-touch   ios   singleton

Not able to send email from an app with MFMailComposeViewController

问题 我在尝试从我的应用程序发送电子邮件时遇到了一些困难。 我从 iCodeBlog (http://icodeblog.com/2009/11/18/iphone-coding-tutorial-in-application-emailing/) 尝试了这段代码 -(void)sendEmail:(id)sender { MFMailComposeViewController *mail = [[MFMailComposeViewController alloc] init]; mail.mailComposeDelegate = self; if ([MFMailComposeViewController canSendMail]) { //Setting up the Subject, recipients, and message body. [mail setToRecipients:[NSArray arrayWithObjects:@"myEmail@email.com",nil]]; [mail setSubject:@"Subject of Email"]; [mail setMessageBody:@"Message of email" isHTML:NO]; //Present the mail view controller [self

2022-05-16 10:54:04    分类:技术分享    iphone   cocoa-touch   email   mfmailcomposeviewcontroller

xml parsing iphone, objective C?

问题 我想在 xml 标签之间获取数据? 如何导航? 并获得价值.. 我使用来自谷歌代码的 wsdl2objc:http://code.google.com/p/wsdl2objc/ 输出soapbody如下: 在此处阅读说明:http://code.google.com/p/wsdl2objc/wiki/UsageInstructions 我的头文件:#import "MService.h" 如何获取图像源和文本值??? 请帮我.... 回答1 if([bodyPart isKindOfClass:[types_getFavoriteColorResponseType class]]) { types_getFavoriteColorResponseType *body = (types_getFavoriteColorResponseType*)bodyPart; // Now you can extract the color from the response q.text = body.color; continue; } Ок 据我了解,这是从您的 SOAP 响应中提取文本数据的部分。 顺便说一句,您需要通过 SAX 或 DOM 处理响应吗? 给定 URL 中的第一个示例指的是 DOM 使用,而第二个示例指的是 SAX。 不止于此,我说不出来。

2022-05-16 04:50:08    分类:技术分享    iphone   cocoa-touch   soap   xml-parsing

Masked UIVisualEffectView does not work on iOS 10

问题 我创建了一个使用UIBlurEffectView的应用程序,该应用程序在 iOS 9 及更低版本上运行良好,但是当我升级我的设备(其中一些,而不仅仅是 1 台设备)时,模糊消失了,而不是模糊有一个半透明的视图由于某些原因。 这堂课有什么变化吗? 有谁知道为什么? 我的代码(视图是我使用 PocketSVG API 获得的 SVG 文件的形状): let blur: UIBlurEffect = UIBlurEffect(style: .Light) let ev: UIVisualEffectView = UIVisualEffectView(effect: blur) ev.translatesAutoresizingMaskIntoConstraints = false self.addSubview(ev) ev.rightAnchor.constraintEqualToAnchor(self.rightAnchor).active = true ev.bottomAnchor.constraintEqualToAnchor(self.bottomAnchor).active = true ev.leftAnchor.constraintEqualToAnchor(self.leftAnchor).active = true ev.heightAnchor

2022-05-15 02:58:04    分类:技术分享    ios   iphone   swift   cocoa-touch   uiview

Create a custom blur view

问题 我需要为我的应用程序添加一个模糊视图。 我试过UIBlurEffect但只有 3 个选项(Light、Dark、ExtraLight),我需要介于 Light 和 Dark 之间的东西。 我知道我唯一的选择是创建自定义模糊视图,但我该怎么做呢? 任何的想法? 回答1 如果您使用情节提要,这是一个简单的方法。 首先,您需要从情节提要的正上方添加一个“带模糊的视觉效果视图”,您的图像、UIUiew 或 uielement 将被看到。 现在绘制视觉效果视图的出口如下:- @IBOutlet weak var blurredViewVisulaEffect: UIVisualEffectView! 并在 viewDidLoad 方法中添加这两行 let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.Light) blurredViewVisulaEffect.effect = blurEffect 根据我们的要求对视图进行操作:-现在,如果您想自定义图像的模糊度,则从 storyboard 更改 UIVisualEffectView 的 alpha 值。将Alpha的值保持在 0.5 到 0.8 之间以获得所需的模糊度。 如果你想改变视图的阴影/颜色,正如你在明暗之间提到的,那么你需要将 UIVisualEffectView

2022-05-14 19:20:16    分类:技术分享    ios   objective-c   swift   cocoa-touch   uiblureffect

Why does iPod's audio not fade back in after my app caused it to fade out?

问题 我的应用程序需要播放一些音频文件,我想淡出 iPod 声音,播放我的文件,然后当我的音频停止播放淡入 iPod 时(就像 iPhone 在来电时处理 iPod 音乐一样) 我正在将我的应用程序的音频会话设置为 kAudioSessionCategory_MediaPlayback 然后在我播放文件之前我调用 AudioSessionSetActive (true) 然后当我的文件结束播放时我调用 AudioSessionSetActive (false) 发生的情况是 iPod 音频通过 AudioSessionSetActive (true) 调用淡出,但在我调用 AudioSessionSetActive (false) 后它再也不会淡入 我正在使用 AVFoundation 类来播放我的音频,我在我的委托方法中使用 audioPlayerDidFinishPlaying,这就是我调用 AudioSessionSetActive (false) 的地方。 我在这里想念什么? 为什么当我停用音频会话时 iPod 没有淡入? 我有错误的音频会话类别吗? 回答1 好的,这很可爱。 在 iPhone OS3 中,请参阅 AddMusic 示例。 本质上,你这样做: #import <MediaPlayer/MediaPlayer.h> ... [

2022-05-14 16:58:25    分类:技术分享    iphone   cocoa-touch

Getting an object from an NSSet

问题 回答1 一个集合有几个用例。 您可以枚举(例如使用 enumerateObjectsUsingBlock 或 NSFastEnumeration),调用 containsObject 来测试成员资格,使用 anyObject 来获取成员(不是随机的),或者使用 allObjects 将其转换为数组(无特定顺序)。 当您不想要重复、不关心顺序并想要快速的成员资格测试时,一组是合适的。 回答2 NSSet 没有方法 objectAtIndex: 尝试调用返回所有对象的 NSArray 的 allObjects。 回答3 如果您有某种唯一标识符来选择您需要的对象,则可以使用filteredSetUsingPredicate。 首先创建谓词(假设您在对象中的唯一 ID 称为“标识符”并且它是一个 NSString): NSPredicate *myPredicate = [NSPredicate predicateWithFormat:@"identifier == %@", identifier]; 然后使用谓词选择对象: NSObject *myChosenObject = [mySet filteredSetUsingPredicate:myPredicate].anyObject; 回答4 NSArray *myArray = [myNSSet allObjects]

2022-05-14 14:31:18    分类:技术分享    objective-c   cocoa   cocoa-touch   object   nsset

How to make a transparent UIWebView

问题 我有一个带有UITableView的应用程序和每行对应的详细信息视图。 在详细视图中,我必须显示一些文本和背景图像(每行的文本不同,但图像保持不变)。 在我看来,最简单的方法是将文本放在 .rtf 文件中并在UIWebView中显示。 然后只需在UIWebView后面放一个UIImageView 。 我试图在 IB 中将UIWebView的不透明度设置为零,但它没有帮助。 你能帮助我吗? 回答1 我建议: webView.opaque = NO; webView.backgroundColor = [UIColor clearColor]; (在 Interface Builder 中设置这些属性适用于 iOS 5.0+,但对于 iOS 4.3,您必须在代码中设置 backgroundColor) 并将其包含在您的 HTML 代码中: <body style="background-color: transparent;"> 回答2 [webView setBackgroundColor:[UIColor clearColor]]; [self hideGradientBackground:webView]; - (void) hideGradientBackground:(UIView*)theView { for (UIView * subview in theView

2022-05-13 11:10:04    分类:技术分享    ios   iphone   cocoa-touch   uiwebview

Making a countdown timer and run it in the background

问题 我想在我的应用程序中添加一个静音按钮,当用户单击它时,他会选择静音的持续时间,并且在启用静音时,用户不会收到来自我的应用程序的通知。 我认为NSTimer是一个不错的选择,但我怎样才能用它做一个计时器呢? 以及如何设置timer也将在后台运行? 注意:我在后台使用位置监控。 回答1 我认为您不需要在后台运行计时器 - 或任何复杂的解决方案: 当您的应用程序处于前台时(像往常一样)使用计时器。 触发时取消静音模式。 当您的应用切换到后台模式并且计时器处于活动状态时,根据您的需要取消计时器或让它运行。 或者,当您的应用程序在后台模式下执行时,不要发送通知。 如果您的应用程序在不久之后被暂停,那么您的代码无论如何都不会执行。 如果您的应用在切换到前台时仍需要遵守静音状态,请计算您在激活静音模式时存储的日期时间值和当前日期时间的持续时间,并将其与您的超时时间进行比较。 回答2 NSTimer 可以在一定的时间间隔后触发一个方法 首先声明一个 NSTimer 对象,比如“timer” self.timer=[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(targetMethod:) userInfo:nil repeats:YES]; 现在这个计时器将在每 1 秒后触发

2022-05-12 23:13:03    分类:技术分享    ios   cocoa-touch   nstimer

EXC_BAD_ACCESS for an object created inside a Block

问题 当谈到积木和 GCD 时,我一直很紧张,因为我的大脑告诉我它看起来非常复杂! 我在一个理想情况下看起来不错的块内发生崩溃: #pragma mark - -(void)fetchOrdersListWithInfoDict:(NSDictionary*)infoDict completionBlock:(CompletionBlock)completionBlock errorBlock:(ErrorBlock)errorBlock { __weak VTVehicleServiceNetworkManager *weakSelf = self; TaskBlock fetchOrdersListTaskBlock = ^() { __block __strong HLOrdersDataProvider *ordersDataProvider = nil; NSBlockOperation *fetchOrdersOperation = [NSBlockOperation blockOperationWithBlock:[^{ ordersDataProvider = [[HLOrdersDataProvider alloc] init]; [ordersDataProvider performFetchOrdersListWithInfoDict:infoDict

2022-05-12 22:05:05    分类:技术分享    objective-c   cocoa-touch   objective-c-blocks   grand-central-dispatch