小编jrt*_*ton的帖子

iOS中的故事板关系

我正在尝试使用新的Storyboard功能,但我对Storyboard Relationships感到困惑?它们与IBOutlets有何不同?

另外,我如何将自己的关系添加到我自己的UIViewController子类中?

我试过查看文档,但找不到太多关于它们的信息.

objective-c ios xcode4 ios5 uistoryboard

8
推荐指数
1
解决办法
1万
查看次数

核心数据+'声明仍然有效'

我遇到这个核心数据错误真的很糟糕.

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason:     'statement is still active'
Run Code Online (Sandbox Code Playgroud)

我的应用程序和代码一切正常,除非偶尔调用请求很快.它发生在我试图打破应用程序时.从一个屏幕到下一个屏幕,下载数据并执行获取请求.

我知道它与线程和核心数据有关.

我从后台线程调用这段代码,它有自己的托管对象上下文.

+ (AN_User *)updateWithRecord:(NSDictionary *)record moc:(NSManagedObjectContext *)moc{

    NSNumber *userID = nil;
    NSString *username = nil;

    if([record objectForKey:@"user_id"]){
        userID = [NSNumber numberWithInt:[[record objectForKey:@"user_id"] intValue]];
    }else if([record objectForKey:@"id_member"]){
        userID = [NSNumber numberWithInt:[[record objectForKey:@"id_member"] intValue]];
    }

    if([record objectForKey:@"username"]){
        username = [NSString stringWithFormat:@"%@", [record objectForKey:@"username"]];
    }else if([record objectForKey:@"member_name"]){
        username = [NSString stringWithFormat:@"%@", [record objectForKey:@"member_name"]];
    }

    if(!userID||!username){
        return nil;
    }

    __block AN_User *user = nil;

    [moc performBlockAndWait:^{

        NSFetchRequest *request …
Run Code Online (Sandbox Code Playgroud)

core-data ios

8
推荐指数
1
解决办法
3827
查看次数

按标签栏和按钮导航屏幕

我有以下问题:

在我的应用程序中,有两种方法可以导航到其他屏幕:按钮或标签栏.

所有屏幕都有调用其他屏幕的标签栏,但主屏幕是有按钮但没有标签栏的主屏幕.

当我开始开发我的应用程序时,我选择标签栏应用程序模板,如果我通过按下选项卡调用屏幕,它可以正常工作.当我使用主屏幕时,问题就开始了:

  • 我需要在这个特定的屏幕中"隐藏"标签栏.
  • 在主屏幕中,如果我通过按钮调用新屏幕,则标签栏会在新屏幕中消失(因为屏幕是通过按钮调用而不是通过标签栏调用).

为了解决这个问题,我想也许我可以创建一个自定义标签栏(我还不知道如何),并在我的屏幕上像UIControl一样调用它,所以这样,如果我需要更改标签栏,修改将是能够调用该控件的所有屏幕.

您有什么推荐的吗?创建一个自定义标签栏并像UIControl一样使用它是个好主意?如果是的话,我该怎么创建一个呢?

我用它来调用windows

RecurringGiftListViewController *listViewController = [[RecurringGiftListViewController alloc] initWithNibName:@"RecurringGiftListViewController" bundle:nil];
listViewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; 
[self presentModalViewController:listViewController animated:YES]; 
[listViewController release];
Run Code Online (Sandbox Code Playgroud)

xcode uitabbaritem uitabbar ios4 ios

7
推荐指数
1
解决办法
335
查看次数

使用unicode的分数的NSString表示

我想在我的iPhone应用程序中"很好地"显示分数.以前我一直使用繁琐的switch语句导致粗俗的unicode字符为粗俗的分数,但我已经了解了unicode分数斜杠字符,如果我正确理解它,应该意味着我可以创建一个字符串如下:

[NSString stringWithFormat:@"%i\u2044%i",numerator,denominator];
Run Code Online (Sandbox Code Playgroud)

并且"渲染器"将使用较小的上标分子和下标分母自动打印它.但是,上面的代码只给我标准的1/2外观.我正在使用drawAtPoint将字符串放在屏幕上.我已经尝试过decomposedStringUsingCanonicalMapping和precomposedStringUsingCanonicalMapping,但说实话,文档丢失了我.

这应该工作还是NSString绘图不能应付这个?

iphone cocoa-touch objective-c nsstring ios

6
推荐指数
1
解决办法
1374
查看次数

UIPanGestureRecognizer距离

是否有可能改变UIPanGestureRecognizer触发之前的距离?,当前实现似乎在触发之前有5-10像素的距离边距,如果可能的话我想降低它.

原因是我使用与UIPanGestureRecognizer组合UIRotationGestureRecognizer来改变对象的旋转,UIPanGestureRecognizer由于距离边距不会立即旋转,因此第一次旋转更新将不会平滑(因为它将从0变为类似5度)

iphone ios

6
推荐指数
1
解决办法
1615
查看次数

如何延迟显示Game Center的弹出窗口?

我已将游戏中心(GC)整合到我的游戏中.它的效果非常好,除了恼人的消息,它可以在激烈的动作中弹出,需要玩家100%的注意力:

"无法连接到Game Center服务器.取消/重试?"

我不介意这个消息,但信息不是那么迫切,必须立即显示.我希望在用户导航到主菜单或其他某个点后显示它.有没有办法实现它?

iphone objective-c ios game-center

6
推荐指数
1
解决办法
880
查看次数

KVO区分willChangeValueForKey和didChangeValueForKey - 都是必要的吗?

根据Apple自己的建议,当手动设置符合KVC/KVO标准的访问器时,应该包括BOTH KVO方法willChangedidChange.这就是我在所有手动访问器方法中所做的.

然而,observeValueForKeyPath:ofObject:change:context使用完全相同的字典内容来调用KVC方法的每一半(将要和做过).

当使用选项注册观察者时:NSKeyValueObservingOptionPrior观察者仍然被调用两次 - 每半次一次 - 并且再次使用相同的字典内容,仅保存字典中包含键'notificationIsPrior'的差异.

现在,当KVO用于改变"CPU价格昂贵"的属性时 - 比如改变颜色或重新绘制大而精细的设计,只有对'didChange'采取行动并忽略(或至少分离出)'willChange才有意义".在过去,我通过将密钥字符串转换为枚举列表元素来实现此目的,该元素返回左移'1'并使用该数字在收到第一个调用时设置32或64位整数的标志标志在第二个重置,我执行CPU密集型操作.

然而,令我感到震惊的是,对于每个案例来说,这都是一个非常重要的开销.有没有人有任何其他'首选'的方法来区分'willChange'和'didChange'的回调而不允许两次完成相同的处理?

我已经仔细搜索了Apple自己的文档和这个帮助小组的大量替代品,但Apple自己的doc实际上并没有详细介绍这个主题,而且这个小组中的一些人也有类似的问题摔跤.在任何情况下都没有提供确定的解决方案.如果有人知道更好的方式 - 除了用交替的旗帜躲避'willChange' - 我会非常感激.(为什么Apple不能在更改字典中包含'阶段'键?)

callback key-value-observing key-value-coding ios

6
推荐指数
1
解决办法
2359
查看次数

无法在UITableView中定义原型单元格

我在Xcode中使用tableview.当我尝试设置内容类型设置和原型单元格数设置时,它们不在那里.设置页面应如下所示:

设置页面应如下所示:

但它看起来像:

在此输入图像描述

如您所见,没有内容设置.为什么不?

xcode uitableview ios ios5

6
推荐指数
1
解决办法
2268
查看次数

在GDB中如何从文件填充内存

我们在 GDB 中有 dump 命令,它将特定的内存转储到文件中。我想要一个与转储命令完全相反的命令,即从特定长度的文件中读取并将其转储到指定的地址(内存)。

请帮助我解决这个问题,该命令是否存在。如果该命令不存在,那么请指导我到底需要如何继续并实现它。作为 GDB 的新手。

我尝试使用恢复,但问题是我需要将文件加载到特定的内存位置一定长度。在恢复命令语法中没有这样的东西

gdb

6
推荐指数
2
解决办法
5900
查看次数

内容偏移动画已损坏

我有一个动画,当手势识别器(双击)触发时,它会被踢掉:

[UIView animateWithDuration:0.3 animations:^{
  _scrollView.contentOffset              = CGPointMake(x, y);
  _scrollViewContentView.frame           = someFrame;
  _scrollViewContentView.layer.transform = 
       CATransform3DMakeScale(1.f/_zoomScale, 1.f/_zoomScale, 1.f);            
}];
Run Code Online (Sandbox Code Playgroud)

除了一种情况之外它工作得很好:如果scrollViewWillBeginDecelerating在动画执行之前没有调用委托方法(只是拖动几乎我的scrollview).

我只是有scrollViewDidEndDragging方法叫.我可以等20秒,然后播放我的动画.它会正常播放,除了我的contentOffset.

委托方法本身什么都不做,只是添加它们才能看出问题所在.

我不知道为什么.

编辑:这是我的问题视频.第1阶段:减速滚动,第2阶段没有.看看最后的位置.阶段1是正确的但不是阶段

objective-c uiscrollview ios contentoffset animatewithduration

6
推荐指数
1
解决办法
1149
查看次数