我的项目中有.xcdatamodeld文件,但它没有打开数据模型.
当我点击Xcode左侧边栏中的文件时,它会继续显示以前选择的文件的内容,而不是显示数据模型.同样,当我右键单击该文件并选择"打开为>"时,我无法选择将其显示为数据模型 - 没有任何内容出现.我检查了SVN repo中的代码,甚至文件管理器所有者也无法在他的工作区中看到它.
我有一个关于NSDate的查询.我有一个日期,即"2011-10-04 07:36:38 +0000",我想检查这个日期是昨天,今天还是未来的日期.
我该怎么做?
识别Swift数组中指定对象之前或之后的项目的最佳方法是什么,同时防止出界错误?
如何以编程方式设置我的WatchKit App背景图像?我需要在代码中设置它,因为它根据可变大小而变化,我们需要在图像上放置一个标签.
在Xcode中,如果我有一个NSString包含数字,即@"12345",我该如何将它分成表示组成部分的数组,即"1","2","3","4","5". ..有一个componentsSeparatedByString在上NSString对象,但在这种情况下,没有分隔符...
我正试图获得iOS键盘的高度.我已经完成并使用了涉及订阅通知的方法,如下所示:https: //gist.github.com/philipmcdermott/5183731
- (void)viewDidAppear:(BOOL) animated {
[super viewDidAppear:animated];
// Register notification when the keyboard will be show
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillShow:)
name:UIKeyboardWillShowNotification
object:nil];
// Register notification when the keyboard will be hide
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillHide:)
name:UIKeyboardWillHideNotification
object:nil];
}
- (void)keyboardWillShow:(NSNotification *)notification {
CGRect keyboardBounds;
[[notification.userInfo valueForKey:UIKeyboardFrameBeginUserInfoKey] getValue:&keyboardBounds];
// Do something with keyboard height
}
- (void)keyboardWillHide:(NSNotification *)notification {
CGRect keyboardBounds;
[[notification.userInfo valueForKey:UIKeyboardFrameBeginUserInfoKey] getValue:&keyboardBounds];
// Do something with keyboard height
}
Run Code Online (Sandbox Code Playgroud)
这适用于用户实际显示键盘的情况.
我的问题:我有另一种观点,我们称它为micView,可以在键盘出现之前显示.用户可以在键入之前选择使用麦克风.我希望micView与键盘的高度相同,这就是我需要键盘高度的原因,但是在键盘被迫出现之前我需要它.因此,在我需要读取高度值之前,未达到UIKeyboardWillShowNotification.
我的问题是:如何在没有键盘出现的情况下通过Notifications或其他方法获得键盘的高度.
我考虑过明确强制键盘出现在viewDidLoad中,这样我就可以将一个实例变量设置为该值,然后将其隐藏并删除两者的动画.但这真的是唯一的方法吗?
我有一个用户对象,我需要存储在NSUserDefaults中并与iOS 8扩展应用程序(Watchkit)共享.在主容器应用程序中,我可以毫无问题地对对象进行编码和解码.但是,当我尝试在Extension中检索存储的用户对象时,出现"'NSInvalidUnarchiveOperationException', reason: '*** -[NSKeyedUnarchiver decodeObjectForKey:]: cannot decode object of class"错误.
据我所知,NSCoding已在对象中正确实现(我能够在'main'应用程序中对对象进行编码和解码).
用于存储用户对象的"容器"应用中的代码.
//Store user data in NSUserDefaults
NSUserDefaults *defaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.mygroup"];
SFUserAccount *user = [SFUserAccountManager sharedInstance].currentUser;
NSData *userEncodedObject = [NSKeyedArchiver archivedDataWithRootObject:user];
[defaults removeObjectForKey:@"SF User Acct1"]; //remove any old values
[defaults setObject:userEncodedObject forKey:@"SF User Acct1"];
[defaults synchronize];
SFUserAccount *decodedUser = [NSKeyedUnarchiver unarchiveObjectWithData:userEncodedObject];
Run Code Online (Sandbox Code Playgroud)
上面的最后一行在主应用程序中执行测试解码工作正常.
从NSUserDefaults检索并在扩展目标中解码的代码如下.
NSUserDefaults *defaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.mygroup"];
NSData *archivedUser = [defaults objectForKey:@"SF User Acct1"];
if (archivedUser){
SFUserAccount *user = [NSKeyedUnarchiver unarchiveObjectWithData:archivedUser];
}
Run Code Online (Sandbox Code Playgroud)
在扩展代码中,我得到一个"'NSInvalidUnarchiveOperationException',原因:'*** …
WPF中是否有命令从上下文菜单中关闭应用程序?也就是说,通过右键单击任何窗口上的标题栏可以获得相同的上下文菜单?
有很多标准命令,但我很难找到退出命令.
我正在尝试打开Apple Watch应用程序的父应用程序.
在Xcode Beta 2中,我们可以使用以下代码:
WKInterFaceController.openParentApplication
Run Code Online (Sandbox Code Playgroud)
但是,在Xcode beta 3中,我再也找不到代码了.现在我不知道如何从watch app打开父应用程序.请帮忙.
我正在使用KIF框架进行功能UI测试.假设我在当前的iPad屏幕上,其中许多视图(标签,按钮,文本字段等)都分配了唯一的可访问性标签.如果我有accessibilityLabel方便的字符串,我可以UIView使用它从当前屏幕获取相关的引用吗?
例如,提供的[[UIView alloc] viewWithTag:5]退货.我正在寻找类似的东西.UIVIewtag[[UIView alloc] viewWithAccessiblityLabel:@"my label"]
PS:我知道暴力方法是以递归方式迭代self.subviews中的所有视图,并比较可访问性标签以找到我要搜索的内容.我正在寻找更好的方法.