// 发布动态网址连接跳转设置
- (void) setWebLink {
// _detailStr = @"http://www.sports.com/app/newdefault.aspx?type=ios";
if([_detailStr rangeOfString:@"http"].location !=NSNotFound){
NSLog(@"yes");
if ([self urlValidation:_detailStr]==YES) {
[self textColour];
_urlStr=_detailStr;
}
}else{
NSLog(@"no");
if ([self urlValidation:_detailStr]==YES) {
[self textColour];
_urlStr = [NSString stringWithFormat:@"http://%@",_detailStr];
}
}
}
- (void)setWeb:(NSString *)url {
UIWebView *webView = [[UIWebView alloc]initWithFrame:CGRectMake(0, 0, 0, 0)];
webView.delegate = self;
if([url rangeOfString:@"http"].location !=NSNotFound){
NSLog(@"yes");
_urlStr=url;
[self textColour];
}else{
NSLog(@"no");
_urlStr = [NSString stringWithFormat:@"http://%@",url];
}
NSURL *ur = [[NSURL alloc] initWithString:_urlStr];
NSURLRequest *req = [NSURLRequest requestWithURL:ur];
[webView loadRequest:req];
[self.view addSubview:webView];
}
- (void)webViewDidFinishLoad:(UIWebView *)webView{
if (webView.request) {
NSLog(@"有返回");
[self textColour];
}
}
/**
* 网址正则验证
*
* @param string 要验证的字符串
*
* @return 返回值类型为BOOL
*/
- (BOOL)urlValidation:(NSString *)string {
NSError *error;
NSString *regulaStr = @"((http[s]{0,1}|ftp)://[a-zA-Z0-9\\.\\-]+\\.([a-zA-Z]{2,4})(:\\d+)?(/[a-zA-Z0-9\\.\\-~!@#$%^&*+?:_/=<>]*)?)|(www.[a-zA-Z0-9\\.\\-]+\\.([a-zA-Z]{2,4})(:\\d+)?(/[a-zA-Z0-9\\.\\-~!@#$%^&*+?:_/=<>]*)?)";
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:regulaStr options:NSRegularExpressionCaseInsensitive error:&error];
NSArray *arrayOfAllMatches = [regex matchesInString:string options:0 range:NSMakeRange(0, [string length])];
for (NSTextCheckingResult *match in arrayOfAllMatches){
NSString* substringForMatch = [string substringWithRange:match.range];
NSLog(@"匹配");
return YES;
// [self textColour];
}
return NO;
}
- (void)textColour {
NSMutableAttributedString *abs = [[NSMutableAttributedString alloc]initWithString:_detailStr];
[abs beginEditing];
//字体大小
// [abs addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:20.0] range:NSMakeRange(0, 2)];
//字体颜色
[abs addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(0, _detailStr.length)];
//下划线
[abs addAttribute:NSUnderlineStyleAttributeName value:@(NSUnderlineStyleSingle) range:NSMakeRange(0, _detailStr.length)];
_detail.attributedText = abs;
UITapGestureRecognizer *tapss = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(capchaBtn:)];
_detail.userInteractionEnabled = YES;
[_detail addGestureRecognizer:tapss];
}
// 链接跳转
- (void)capchaBtn:(UITapGestureRecognizer *)sendr{
NSLog(@"跳转网页咯");
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:_urlStr]];
}