为了测试授予iOS日历的访问权限,我需要重置测试设备上的隐私设置.
但是,每次我在设备上安装它时,它都会记住旧的隐私设置,并且不会显示警报视图,询问我是否授予访问权限.删除应用程序并重新安装它并不会改变这一事实.
有没有办法让iOS忘记它知道我的应用程序并再次问我?
我已经安装了AdMob SDK 6.2.0(Xcode 4.5(4G182),我正在iPhone 4S和模拟器上进行测试).我按照教程进行操作,只想让AdMob显示一次横幅.但它在最后一行崩溃了:
self.bannerView = [[GADBannerView alloc]
initWithFrame:CGRectMake(0.0,
self.view.frame.size.height -
GAD_SIZE_320x50.height,
GAD_SIZE_320x50.width,
GAD_SIZE_320x50.height)];
self.bannerView.delegate = self;
self.bannerView.adUnitID = @"xREMOVEDBYMEx";
self.bannerView.rootViewController = self;
[self.view addSubview:self.bannerView];
GADRequest * request = [GADRequest request];
request.testing = YES;
[self.bannerView loadRequest:request];
Run Code Online (Sandbox Code Playgroud)
崩溃是
2012-09-28 09:03:58.268 NewProject [1467:c07] - [GADObjectPrivate changeState:]:无法识别的选择器发送到实例0x95c17d0 2012-09-28 09:03:58.276 NewProject [1467:c07] *终止应用程序未捕获的异常'NSInvalidArgumentException',原因:' - [GADObjectPrivate changeState:]:无法识别的选择器发送到实例0x95c17d0'
对我来说,这看起来像图书馆中的一个错误,但我认为这不太可能.有什么想法吗?
编辑:完全相同的代码在示例项目中工作.我的项目文件有什么问题可以导致错误吗?
我搜索了这个网站,但我发现了一些未解决的问题.
我已经将自定义字体加载到我的xcode项目中.一件[UIFont fontWithName:@"Laconic-Light" size:19]作品.但是界面构建器不喜欢该字体.我无法与IB一起使用它总是显示默认字体.有没有办法告诉IB它可以使用该字体?
我有一个NSArrayController和一个NSTableView.他们从iTunes中显示曲目.我可以通过单击标题对列表进行排序.
有没有办法为表视图设置默认排序描述符,以便每次用户启动应用程序时对相册进行排序?
我试图在数组控制器和表视图上设置sortDescriptor,但这没有任何改变.
谢谢
编辑:答案是对的.但它需要一个NSArray:
- (NSArray *)mainSortDescriptor {
return [NSArray arrayWithObjects:
[NSSortDescriptor sortDescriptorWithKey:@"album" ascending:YES],
[NSSortDescriptor sortDescriptorWithKey:@"trackNumber" ascending:YES],
nil];
Run Code Online (Sandbox Code Playgroud)
}
我有一个名为"Model"的模型文件.如果我将其重命名为"SomeOtherName",它就不会被加载.
initWithContentsOfURL 返回nil并且:
mergedModelFromBundles: [NSArray arrayWithObjects:[NSBundle mainBundle], nil];
Run Code Online (Sandbox Code Playgroud)
...崩溃因为它认为这个阵列中有零.
我被允许重命名我的模型,所以有什么不对吗?我无法提供更多信息,因为我没有:P SomeOtherName模型放在包中,它应该加载得很好.
谢谢
那是我的错误:
dyld: Library not loaded: /usr/local/lib/libofa.0.dylib
Referenced from: /sers/david/Projekte/Test/build/Debug/Test.app/Contents/MacOS/Test
Reason: image not found
Run Code Online (Sandbox Code Playgroud)
我做了一些研究并使用install_name_tool更改了dylib中的路径:
davids-macbook:Test david$ otool -L libofa.0.0.0.dylib
libofa.0.0.0.dylib:
@executable_path/../Frameworks/libofa.0.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.1)
/System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate (compatibility version 1.0.0, current version 4.0.0)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0)
Run Code Online (Sandbox Code Playgroud)
但Xcode一直在/ usr/lib /中搜索它:
build/Debug/Test.app/Contents/MacOS/Test:
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0)
/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox (compatibility version 1.0.0, current version 1.0.0)
/opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
@executable_path/../Frameworks/TagLib.framework/Versions/A/TagLib (compatibility version 1.0.0, current version 1.0.0) …Run Code Online (Sandbox Code Playgroud) 就是这样.我想把两个按钮居中.我的工具栏看起来像这样([B]是一个按钮):
[B] <----灵活空间---> [B] [B] <----灵活空间---> [SearchBar]
但是搜索栏比最左边的按钮大,所以中间按钮不居中.我尝试添加一个具有自定义宽度的视图,但这被本地化搞砸了.有没有办法让他们居中?
我有一个OSX应用程序,我想迁移到ARC.如果我将基本SDK设置为10.7,一切正常.但是当我将它设置为10.6时它不起作用(因为它没有找到_objc_release等).那么如何在启用ARC的情况下将我的应用部署到10.6?
据传,如果我更新我的应用程序,将有一个选项来保持星级评级.我找不到任何相关信息.秋天来了吗?
我需要让我的小家伙(在UIIamgeView中)向前跳,它必须看起来很自然.我想知道有没有办法用CoreAnimation(beginAnimation/commitAnimation)做到这一点?
我可以通过在空中设置一个点来做到这一点,但运动看起来不自然:P
我有这个后台线程,它对核心数据对象做了一些事情.我得到如下背景:
- (id)_managedObjectContextForThread;
{
NSManagedObjectContext * newContext = [[[NSThread currentThread] threadDictionary] valueForKey:@"managedObjectContext"];
if(newContext) return newContext;
newContext = [[NSManagedObjectContext alloc] init];
[newContext setPersistentStoreCoordinator:[[[NSApplication sharedApplication] delegate] persistentStoreCoordinator]];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(_mergeChangesFromManagedObjectContext:)
name:NSManagedObjectContextDidSaveNotification
object:newContext];
[[[NSThread currentThread] threadDictionary] setValue:newContext forKey:@"managedObjectContext"];
return newContext;
}
Run Code Online (Sandbox Code Playgroud)
然后我获取一些对象,修改它们并保存上下文:
- (void) saveContext:(NSManagedObjectContext*)context {
NSError *error = nil;
if (![context save:&error]) {
[[NSApplication sharedApplication] presentError:error];
}
}
- (void)_mergeChangesFromManagedObjectContext:(NSNotification*)notification;
{
[[[[NSApplication sharedApplication] delegate] managedObjectContext] performSelectorOnMainThread:@selector(mergeChangesFromContextDidSaveNotification:)
withObject:notification
waitUntilDone:YES];
}
Run Code Online (Sandbox Code Playgroud)
..后来我删除了观察者.这适用于主要部分.但是当一些属性合并回来时,它们不会得到更新.在更新之前为零的属性.有价值的那些保持不变.
我试过了:
[newContext setMergePolicy:NSOverwriteMergePolicy];
Run Code Online (Sandbox Code Playgroud)
......(以及其他合并政策)主要背景但它不起作用:P
谢谢您的帮助.
注意:我已将值绑定到NSTableView.我在合并后记录它们.零值的属性似乎工作正常.
我需要合并stderr和stdout,因为我希望我的调试和异常在同一个日志文件中.我试过了
NSString *logPath = [NSHomeDirectory() stringByAppendingPathComponent:@"Library/Tag Monster/log.log"];
freopen([logPath fileSystemRepresentation], "a", stderr);
freopen([logPath fileSystemRepresentation], "a", stdout);
Run Code Online (Sandbox Code Playgroud)
但这搞砸了秩序.它会在文件顶部打印stderr消息.或者有更好的方法登录可可吗?NSLog只是阻塞了syslog:P
编辑:尝试我的日志宏:
#ifdef DEBUG_MODE_LEVEL_KEEP
#define DLogK(...) (void)printf("%s: %s\n", __PRETTY_FUNCTION__, [[NSString stringWithFormat:__VA_ARGS__] UTF8String])
#else
#define DLogK(...)
#endif
Run Code Online (Sandbox Code Playgroud)
如果我只是将stderr重定向到日志文件并使用
fprintf(stderr, "%s: %s\n", __PRETTY_FUNCTION__, [[NSString stringWithFormat:__VA_ARGS__] UTF8String])
Run Code Online (Sandbox Code Playgroud)
它也不起作用.这不应该只是工作吗?
谢谢
我有这个View类.它将子视图添加到自身,然后我想在其中一个上进行CATransform3DMakeRotation(最后一个添加了addSubiew).它位于顶部,但一旦动画开始,它就在奥得河景色之下.这是我的CATransform3DMakeRotation代码:
CABasicAnimation *topAnim = [CABasicAnimation animationWithKeyPath:@"transform"];
topAnim.duration=3.3;
topAnim.repeatCount=0;
topAnim.fromValue = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(0.0, 0, 0, 0)];
float f = DegreesToRadians(180); // -M_PI/1;
topAnim.toValue=[NSValue valueWithCATransform3D:CATransform3DMakeRotation(f, 1,1, 0)];
//topAnim.delegate = self;
topAnim.removedOnCompletion =NO;
topAnim.fillMode = kCAFillModeForwards;
[[KuvertLasche layer] addAnimation:topAnim forKey:@"flippy"];
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?编辑:此视图位于包含大量其他视图的子视图中:
如果我将它从letterView中取出并将其放在letterView上方的self.view上,它将进入中途,然后进入其他视图.很奇怪.有什么建议?
cocoa ×5
iphone ×4
core-data ×2
ios ×2
objective-c ×2
admob ×1
app-store ×1
binding ×1
c ×1
calabash ×1
cocoa-touch ×1
dylib ×1
ekeventkit ×1
fonts ×1
linker ×1
macos ×1
nstableview ×1
sorting ×1
stderr ×1
stdout ×1
uiimageview ×1
uiview ×1
xcode ×1