Tag: cocoa触摸

访问文本字段时,警告其他线程获取locking

我有一个名为_passwordTextField的UITextField ,我隐藏input: [_passwordTextField setSecureTextEntry:YES]; 每次我用passwordTextField.text访问字段的文本时,我都会看到这样的警告: void _WebThreadLockFromAnyThread(bool),0x9077460:从主线程或Web线程以外的线程获取Weblocking。 不应该从辅助线程调用UIKit。 我如何删除此警告?

核心数据获取与瞬态关系谓词!=无

在我的实体中有一个临时的可选关系(不是相反的) 。 获取谓词 NSPredicate(format: "name LIKE\(option) (%@) AND tc!=nil", name) 没有给出结果,这不是预期的结果。 tc是从另一个关系计算出来的。 如果AND和“AND”之后的部分被移除,则取得效果很好。 瞬态属性是这样实现的: public var tc : TC? { self.willAccessValue(forKey: "tc") self.didAccessValue(forKey: "tc") return friend?.parent } 我注意到,这个tc访问器内部的debugging断点没有打到 。 控制台中没有打印错误信息。 我错过了什么? 编辑: 读完Ron的评论后,我search了更多,发现: 与NSPredicate兼容的核心数据类似于瞬态的属性这对我来说不是一种select,因为实际的瞬态关系计算起来比较昂贵。 如何使用链式虚拟财产的NSPredicate? NSPredicate不能使用计算字段 核心数据:使用瞬态属性作为标准进行search 具有瞬态属性的答案是一样的。 起初我没有find。 也许我太专注于nil或relationship 。 只要不是暂时的,我们可以通过与nil的关系来获取: iPhone SDK的核心数据:获取所有实体与零关系? 苹果关于瞬态属性的文档在这里 。

使用NSPredicate比较两个arrays

我有两个数组,一个代表全尺寸图像的列表,另一个代表图像的缩略图。 有一种方法,使用NSPredicate来检查全尺寸图像是否有缩略图? 拇指叫做img {number} _thumb.jpg,而全尺寸的图像叫做img {number} .jpg。

Objective-C 2.0的内存pipe理

我是Objective-C的初学者。 我正在通过编写简单的命令行代码研究Objective-C中的内存pipe理。 我的环境在下面。 Mac OS X Mountain Lion。 Xcode4.5 我在下面写了一个代码。 test.m 1 #import <Foundation/Foundation.h> 2 #import <stdio.h> 3 4 @interface A : NSObject 5 -(void)myprint; 6 @end 7 8 @implementation A 9 -(void)dealloc { 10 printf("dealloc!!\n"); 11 [super dealloc]; 12 } 13 14 -(void)myprint { 15 printf("myprint!!\n"); 16 } 17 @end 18 19 int main(void) […]

在iphone中加速从服务器的响应检索器

我正在使用以下代码从服务器获取结果 NSString *queryString = @"MyString" NSString *response = [NSString stringWithContentsOfURL:[NSURL URLWithString:queryString] encoding:NSUTF8StringEncoding error:&err]; NSLog(@"%@",response); if (err != nil) { UIAlertView *alert = [[UIAlertView alloc]initWithTitle: @"Error" message: @"An error has occurred. Kindly check your internet connection" delegate: self cancelButtonTitle:@"Ok" otherButtonTitles:nil]; [alert show]; [indicator stopAnimating]; } else { //BLABLA } 这个代码的问题是,如果服务器显示滞后,需要3秒钟才能得到这个响应 NSString *response = [NSString stringWithContentsOfURL:[NSURL URLWithString:queryString] […]

模式视图控制器 – UIBarButtonItems不会持续

我呈现模式视图控制器,打包在一个UINavigationController。 当他们第一次出现时,酒吧button项目是好的。 但是,如果我点击一个button,并将一个新的视图控制器推到UINavigationController,然后我使用该视图控制器的后退button,它会popup回原来的模式视图控制器 , button不显示 ,(但是当我点击它们的时候它们就会工作 – >就是看不到它们) 我似乎无法弄清楚为什么会发生这种情况。 这是一些代码。 哦,顺便说一下,我定制了导航控制器的导航栏的背景。 我有一种感觉,这可能是造成这种视觉干扰,但我不知道怎么改变才能正确。 在GGMainViewController中: GGSelectTeamsViewController *chooseTeam = [[GIFSelectTeamsViewController alloc] init]; UINavigationController* navigationController = [[UINavigationController alloc] initWithRootViewController:chooseTeam]; [self setupModalNavigationBar:navigationController]; [self presentViewController:navigationController animated:YES completion:nil]; – (void)setupModalNavigationBar:(UINavigationController *)nav { // unnecessary code removed for a quicker read // basically navigation bar has a background gradient as well as a […]

在超类上调用-initWithFrame:

有人可以帮助我理解,为什么我们在初始化之前先调用super方法的初始化方法。 我遇到了UIView子类中的一段代码,并想知道在这里myMethod总是被调用,这意味着我没有得到在UIView框架集,那么为什么我们这样做,并使用if条件。 self = [super initWithFrame:CGRectMake(0, 0, 20, 100)]; if(self != nil) { [self myMethod:data]; self.backgroundColor = [UIColor clearColor]; } return self;

从独特的PasteBoard(特定于应用程序的粘贴板)

进出口保存到一个独特的粘贴板: UIPasteboard *pasteboard = [UIPasteboard pasteboardWithName:@"myPasteboard" create:YES]; [pasteboard setPersistent:YES]; //save to unique pasteboard [pasteboard setString: [NSString stringWithFormat:@"%@",self.myTextFieldHere]]; 试图在这里读出来: UIPasteboard *pasteSaved = [UIPasteboard pasteboardWithName:@"myPasteboard"]; _myTextFieldHere.text = [pasteSaved string]; 我的错误是“没有select器的类方法”我的本地variablespastesaved 到目前为止,还没有尝试过 UIPasteboard *pasteSaved =[[UIPasteboard pasteboardTypes] containsObject:@"myPasteBoard"]; UIPasteboard *pasteSaved = [UIPasteboard pasteboardWithName:@"myPasteboard"]; UIPasteboard *pasteSaved = [UIPasteboard pasteboardWithUniqueName:@"myPasteboard"]; UIPasteboard *pasteSaved = [UIPasteboard: @"myPasteboard"]; UIPasteboard *pasteSaved = [UIPasteboard pasteboardWithUniqueName];

iOS:找出小数位数

我有一些来自服务器的数字,如何知道多less个小数位? 我的意思是如何知道2.43有两个数字,昏迷后,3.145 – 3号码,2.0003 – 4号码。 提前致谢..

当我的应用程序处于后台时,在iOS上捕捉硬件button

我想要执行一些代码,当用户按家庭,电源或音量button(这不重要,其中哪一个)。 我想赶上事件甚至应用程序是最小化到背景和设备正在睡觉。 所以首要的任务是处理事件,当设备在用户的口袋里,用户按下button,但不能取出设备。 那可能吗? 如果电源button不可能,可能是音量或家庭button? 我该怎么做?