uiwebview保存图片

直接上代码,控制器.m的


#import "ViewController.h"


@interface ViewController () <UIWebViewDelegate, UIGestureRecognizerDelegate>

@property (weak, nonatomic) IBOutlet UIWebView *webView;


@end


@implementation ViewController


- (void)viewDidLoad {

    [super viewDidLoad];

    

    NSURL *url = [NSURL URLWithString:@"http://image.baidu.com/wisebrowse/index?tag1=%E7%BE%8E%E5%A5%B3&tag2=%E5%85%A8%E9%83%A8&tag3=&pn=0&rn=10&from=index&fmpage=index&pos=magic#/home"];

    NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];

    [self.webView loadRequest:request];

    

    UILongPressGestureRecognizer *longPressed = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(longPressed:)];

    longPressed.delegate = self;

    [self.webView addGestureRecognizer:longPressed];

}


#pragma mark - UIWebViewDelegate

- (void)webViewDidFinishLoad:(UIWebView *)webView

{

    NSLog(@"%s", __func__);

}


#pragma mark - UIGestureRecognizerDelegate

- (void)longPressed:(UITapGestureRecognizer*)recognizer{

    //只在长按手势开始的时候才去获取图片的url

    if (recognizer.state != UIGestureRecognizerStateBegan) {

        return;

    }

    CGPoint touchPoint = [recognizer locationInView:self.webView];

    NSString *js = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).src", touchPoint.x, touchPoint.y];

    NSString *urlToSave = [self.webView stringByEvaluatingJavaScriptFromString:js];

    if (urlToSave.length == 0) {

        return;

    }

    NSLog(@"获取到图片地址:%@",urlToSave);

}


//可以识别多个手势

-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer

{

    return YES;

}


@end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值