搜尋

首頁  >  問答  >  主體

ios - web view加载的文章,点击图片查看太灵敏?

1.问题描述:webview加载的文章,查看图片太灵敏,滑动webview的时候只要手指稍微沾到图片,就会进入图片浏览模式。
2.页面架构:本身这个界面是一个controller(控制器),加载web view的view是重写的一个类(class),是UIView类。在这个controller引用这个uiview类,加载web view信息。
点击事件:在UIView类写的点击事件,使用的block。

 @property(nonatomic,strong)void(^action)(NSInteger     index,NSMutableArray*array,NSMutableArray * urlArray);//和下面的方法进行参数的传递
    -(void)didselectheadViewImage:(void(^)(NSInteger index,NSMutableArray*array,NSMutableArray * urlArray))action;

在controller里面,获取图片信息,引用点击方法。

 [_detailTextPictureView didselectheadViewImage:^(NSInteger index, NSMutableArray *array, NSMutableArray *urlArray) {
                    
                    self.picArray = [NSMutableArray arrayWithArray:array];
                    self.urlImageArray = [NSMutableArray arrayWithArray:urlArray];
                    [self fangda:index];
                    
                }];

放大事件使用的MWPhotoBrowser。

 -(void)fangda:(NSUInteger)index{
    
    //点击放大
    MWPhotoBrowser *browser = [[MWPhotoBrowser alloc] initWithDelegate:self];
    browser.displayActionButton = NO;
    
    _mwArray = [NSMutableArray array];
    for ( UIImage * image in _picArray) {
        MWPhoto * photo = [[MWPhoto alloc]initWithImage:image];
        [_mwArray addObject:photo];
    }
    [browser setCurrentPhotoIndex:index];
    // Show
    UINavigationController *nc = [[UINavigationController alloc] initWithRootViewController:browser];

    
    nc.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;

         
    [self presentViewController:nc animated:YES completion:nil];

    
    //保存图片
    [browser didselectheadViewImage:^(NSString *idStr) {
       
        UIActionSheet* sheet = [[UIActionSheet alloc]initWithTitle:nil delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:nil otherButtonTitles:@"保存到手机", nil];
        _imgURL = [_urlImageArray objectAtIndex:[idStr integerValue]-1];
        [sheet showInView:[UIApplication sharedApplication].keyWindow];
    }];
    
    
}

在UIView类里面,加载web view并获取内容信息包括图片使用的是这个方法。

-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)_request navigationType:(UIWebViewNavigationType)navigationType {}

如果有图片的url

if (_imgURL)
            {
                _timer = [NSTimer scheduledTimerWithTimeInterval:2 target:self selector:@selector(handleLongTouch) userInfo:nil repeats:NO];
                _fangdaTimer =  [NSTimer scheduledTimerWithTimeInterval:0.8 target:self selector:@selector(fangdaClick) userInfo:nil repeats:NO];
            }

一个是长按保存,一个是放大,使用的timer计时器,但是这个计时器只是延缓了点击出现之后图片出现的时间,而没有改变初始点击的时候为什么这么灵敏的问题。

怪我咯怪我咯2771 天前478

全部回覆(0)我來回復

無回覆
  • 取消回覆