1.什么时候该用ASIHTTPRequest,什么时候该用ASIFormDataRequest
如果是 Get ,或者参数可以简单的组成 Get 方式提交的时候,比如 thread.php?id=123 ,就用 ASIHTTPRequest就可以了原因是简单
如果必须是 POST ,或者参数很多,你要构造一个带参数的 URL很麻烦的时候,就用 ASIHttpFormDataRequest
2.三个比较经典的git的库,关于状态栏的。
https://github.com/myell0w/MTStatusBarOverlay/
https://github.com/enormego/PhotoViewer
https://github.com/mwaterfall/MWPhotoBrowser
3.验证邮箱的合法性(转http://blog.csdn.net/pjk1129/article/details/6652636)
下面给出两种不同的方法验证邮箱输入合法性
//通过区分字符串
-(BOOL)validateEmail:(NSString*)email
{
if((0 != [email rangeOfString:@"@"].length)&&
(0 != [email rangeOfString:@"."].length))
{
NSCharacterSet*tmpInvalidCharSet = [[NSCharacterSet alphanumericCharacterSet]invertedSet];
NSMutableCharacterSet* tmpInvalidMutableCharSet =[[tmpInvalidCharSet mutableCopy] autorelease];
[tmpInvalidMutableCharSet removeCharactersInString:@"_-"];
NSRangerange1 = [email rangeOfString:@"@"
options:NSCaseInsensitiveSearch];
//取得用户名部分
NSString*userNameString = [email substringToIndex:range1.location];
NSArray*userNameArray = [userNameStringcomponentsSeparatedByString:@"."];
for(NSString* string in userNameArray)
{
NSRange rangeOfInavlidChars =[string rangeOfCharacterFromSet: tmpInvalidMutableCharSet];
if(rangeOfInavlidChars.length!= 0 || [string isEqualToString:@""])
return NO;
}
//取得域名部分
NSString*domainString = [email substringFromIndex:range1.location+1];
NSArray*domainArray = [domainStringcomponentsSeparatedByString:@"."];
for(NSString *string in domainArray)
{
NSRangerangeOfInavlidChars=[stringrangeOfCharacterFromSet:tmpInvalidMutableCharSet];
if(rangeOfInavlidChars.length!=0 || [string isEqualToString:@""])
return NO;
}
returnYES;
}
else {
return NO;
}
}
//利用正则表达式验证
-(BOOL)isValidateEmail:(NSString *)email {
NSString *emailRegex =@"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
NSPredicate *emailTest = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",emailRegex];
return [emailTest evaluateWithObject:email];
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。