小编tip*_*low的帖子

iOS中的AddressBook同步

自上次打开应用程序以来,iOS中是否有任何方式可以获取有关通讯簿更改的通知.

应用程序将地址簿存储在内部数据库中,我不希望每次激活时都执行完全同步.

提前致谢.

澄清问题的小补充:我使用ABAddressBookRegisterExternalChangeCallback观察应用程序暂停到后台时的更改,但据我所知,如果应用程序完全关闭并重新打开(例如:电话重启或从任务列表关闭后),此方法无法工作).

iphone objective-c addressbook ios

23
推荐指数
1
解决办法
3782
查看次数

快速找到不完整实施警告的原因

最近,我正在清理我的课程,这个课程有很多未使用的方法和变量.当我构建我的项目时,xCode发出警告Incomplete implementation.这个课很庞大,我花了很多时间才找出哪个方法没有实现.m.为了防止将来在这个警告上花费这么多时间,我想知道是否有更快的方法来找出未实现的方法.我可能会遗漏xCode的一些内置功能!

编辑 -(从答案)如果您觉得需要可视化要做的事情,请看一下:

在此输入图像描述

首先,单击断点选项卡中的警告,以在黄色选项卡中查看警告详细信息,如下所示.只需单击突出显示的部分,您将直接进入不完整的方法.

warnings ios

14
推荐指数
2
解决办法
6468
查看次数

iPhone CGContext:绘制两条不同颜色的线条

我在使用带有iPhone应用程序的CGContext时遇到了一些麻烦.我试图绘制几条不同颜色的线条,但所有的线条总是最终具有最后使用的颜色.我尝试了几种方法,但并不幸运.

我设置了一个小样本项目来处理这个问题.这是我的代码,我在drawRect方法中使用.我想画一条红线和一条蓝线:

- (void)drawRect:(CGRect)rect{
    NSLog(@"drawrect!");
    CGContextRef bluecontext = UIGraphicsGetCurrentContext(); 
    CGContextSetLineWidth(bluecontext, 2.0);
    CGContextSetStrokeColorWithColor(bluecontext, [UIColor blueColor].CGColor);
    CGContextMoveToPoint(bluecontext, 1, 1);
    CGContextAddLineToPoint(bluecontext, 100, 100);
    CGContextSetStrokeColorWithColor(bluecontext, [UIColor redColor].CGColor);
    CGContextAddLineToPoint(bluecontext, 200, 100);
    CGContextStrokePath(bluecontext);
}
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助

iphone line draw cgcontext

11
推荐指数
2
解决办法
2万
查看次数

UITegmentedControl在UIToolBar中

我知道如何将添加UISegmentedControlUIToolBar从内部IB,但我想以编程方式做同样的,因为我使用的自定义子类UISegmentedControl有没有一个XIB.

这是以下代码UISegmentedControl:

SVSegmentedControl *navSC = [[SVSegmentedControl alloc] initWithSectionTitles:[NSArray arrayWithObjects:@"List", @"Calendar", nil]];
navSC.delegate = self;
[self.view addSubview:navSC];
[navSC release];
navSC.center = CGPointMake(160, 70);
Run Code Online (Sandbox Code Playgroud)

我想做的事情[self.toolbar addSubview:navSC],但没有显示任何东西.

iphone xcode objective-c uisegmentedcontrol uitoolbar

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

如何在android中获取包名?

我需要自己编写一些util类,我需要android app的packagename.虽然我发现packageManager只能用于具有上下文的Activity等.我只想在我的类中获取packagename,这将在android应用程序中使用.那我该怎么做呢?谢谢!

java android

7
推荐指数
2
解决办法
4万
查看次数

强制尝试块在两者之间中断的最佳方法是什么?

我有try- catch块,我希望breakswitch块,但我找不到这样做的推荐方式.我在try- catch块中获取了大量数据,并且希望在满足某个条件的情况下停止其间的提取.为了让它现在正常工作,我故意强迫代码进入catch块:

int i=0;
    try {
        //--do stuff----
        if(//-------is condition met?--------//)
            i = 1/0; // divide 1 by 0 -- a definite exception
    }
    catch (Exception e) {//---------do nothing---------//}
Run Code Online (Sandbox Code Playgroud)

这样做是否安全还是我应该采取其他方式?

编辑:我正在获取一些xml数据(实际上,很多).根据互联网连接,我需要在某个时间(超时)之后停止解析,而不是通过整个流.我经历了循环,但我稍后也做了一些计算.用不完整的数据计算没有任何意义,所以我宁愿跳过整个事情.

java blackberry try-catch break

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

缩放和绘制图像时CGContextStrokePath无法正常工作

我正在根据touchesMoved:方法绘制线条,通常它工作正常.但是当我放大图像并绘制时,先前绘制的线条都会移位并且越来越模糊,最终消失.我已经尝试使用UIPinchGestureRecognizer,只是增加framemyImageView(仅适用于多点触摸事件),但出现问题两种方式.这是绘图的代码:

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
 NSArray *allTouches = [touches allObjects];
 int count = [allTouches count];
 if(count==1){//single touch case for drawing line
    UITouch *touch = [touches anyObject];   
    CGPoint currentPoint = [touch locationInView:myImageView];
    UIGraphicsBeginImageContext(myImageView.frame.size);
    [drawImage.image drawInRect:CGRectMake(0, 0, myImageView.frame.size.width, myImageView.frame.size.height)];
    CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound);
    CGContextSetLineWidth(UIGraphicsGetCurrentContext(), 2.0);
    CGContextBeginPath(UIGraphicsGetCurrentContext());
    CGContextMoveToPoint(UIGraphicsGetCurrentContext(), lastPoint.x, lastPoint.y);
    CGContextAddLineToPoint(UIGraphicsGetCurrentContext(), currentPoint.x, currentPoint.y);
    CGContextStrokePath(UIGraphicsGetCurrentContext());
    drawImage.image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    lastPoint = currentPoint;
 }
else{//multi touch case
   // handle pinch/zoom
  }
}
Run Code Online (Sandbox Code Playgroud)

这是在没有缩放的情况下绘制的图像:

在此输入图像描述

这是用放大后用红色箭头表示已经在放大之前绘制的片段(如上图所示)中描述问题的图像.图像模糊不清:

在此输入图像描述

还可以注意到,朝向末端绘制的线的一部分不受影响,并且对于及时拉回的线发生现象.我相信这样做的原因是当我放大/缩小时图像尺寸属性会丢失,这可能会导致模糊和移位,但我不确定!

编辑 - …

iphone core-graphics uiimage pinch ios

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

iOS CF数据结构与NS数据结构

我想知道CF数据结构(CFArray,CFDictionary等)和NS数据结构(NSArray,NSDictionary等)之间究竟有什么区别.我一直在使用大多数NS类,但我发现CF类具有更好的性能并且比NS类具有一些优势.如果有人能够深入解释利弊,我将不胜感激.

iphone ios data-structures

4
推荐指数
1
解决办法
2135
查看次数

使用反余弦的线之间的绝对角度

我想用反余弦函数计算由三个点(其中一个点是两条线的交点)形成的两条线之间的角度,如下所示:

CGFloat a = initialPosition.x - origin.x;
CGFloat b = initialPosition.y - origin.y;
CGFloat c = currentPosition.x - origin.x;
CGFloat d = currentPosition.y - origin.y;
CGFloat angle = (180/M_PI) * acosf(((a*c) + (b*d)) / ((sqrt(a*a + b*b)) * (sqrt(c*c + d*d))));
Run Code Online (Sandbox Code Playgroud)

不幸的是,acosf仅返回介于0和pi之间的值.如何找到介于0和2*pi之间的值(例如,以逆时针方式)?

trigonometry inverse ios

4
推荐指数
1
解决办法
2772
查看次数

关于循环的问题.我需要通过java中的循环访问10个标签?

我有关于循环的问题.我需要访问10个标签,这些标签的名称类似于label1,label2,label3 ......等等.我需要知道是否可以通过java中的循环访问这些标签?

java loops

4
推荐指数
1
解决办法
491
查看次数