1.如何添加手势操作。

 

  我们以在view上来举例

 

    
    //创建一个view
    
    UIView *tapView=[UIView new];
    tapView.frame=CGRectMake(0, 0, kWidth, kHeight);
    tapView.userInteractionEnabled = YES;//打开点击事件
    [self.view addSubview:tapView];
    
    //添加手势
    UITapGestureRecognizer * tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(event:)];
    
    [tapView addGestureRecognizer:tapGesture];
    
#pragma mark  点击事件

-(void)event:(UITapGestureRecognizer *)recognizer{
    
    
}

 

 

2.app性能的测试方法有哪些。  

 

  Xcode --> Open Developer Tool -->Instrumnets  

 

 

 

2.测试fps 值 这个我们做列表刷新的时候就会经常用这个来测试  CADisplayLink

 

_displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(displayLinkTick:)];
       [_displayLink setPaused:YES];
       [_displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSRunLoopCommonModes];

//这个方法的执行频率跟当前屏幕的刷新频率是一样的,屏幕每渲染刷新一次,就执行一次,那么1秒的时长执行刷新的次数就是当前的FPS值
- (void)displayLinkTick:(CADisplayLink *)link{
   
   //     duration 是只读的, 表示屏幕刷新的间隔 = 1/fps
   //     timestamp 是只读的, 表示上次屏幕渲染的时间点
   //    frameInterval 是表示定时器被触发的间隔, 默认值是1, 就是表示跟屏幕的刷新频率一致。
   //    NSLog(@"timestamp= %f  duration= %f frameInterval= %f",link.timestamp, link.duration, frameInterval);
   
   //初始化屏幕渲染的时间
   if (_beginTime == 0) {
       _beginTime = link.timestamp;
       return;
   }
   //刷新次数累加
   _count++;
   //刚刚屏幕渲染的时间与最开始幕渲染的时间差
   NSTimeInterval interval = link.timestamp - _beginTime;
   if (interval < 1) {
       //不足1秒,继续统计刷新次数
       return;
   }
   //刷新频率
   float fps = _count / interval;
   
   if (self.FPSBlock != nil) {
       self.FPSBlock(fps);
   }

   //1秒之后,初始化时间和次数,重新开始监测
   _beginTime = link.timestamp;
   _count = 0;
}

 

 

3.说一个你独立开发的项目中你遇到的困难,以及你是如何解决的

 

我在这里就用最简单的错误来解答,”UIimageview 不显示“

 

我在独立开发《***》项目中遇到过 UIimageview 不显示的问题,

1.检查代码, 是否addSubview, 图片是否存在,fram 是否过大过小,是否被遮挡,是否有冲突

2.清理下缓存,重新导入图片

3. 再拿着问题去问人,或者Google 
4.如果我这个问题三个小时未解决出来 就放着。或者换一个思路去解决