常用代码整理(重要)
常用代碼整理:
?
1.判斷郵箱格式是否正確的代碼: //利用正則表達式驗證 -(BOOL)isValidateEmail:(NSString?*)email { NSString?*emailRegex =?@"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate?*emailTest = [NSPredicate?predicateWithFormat:@"SELF MATCHES%@",emailRegex]; return?[emailTest?evaluateWithObject:email]; } 2.圖片壓縮 用法:UIImage *yourImage= [self imageWithImageSimple:image scaledToSize:CGSizeMake(210.0, 210.0)]; //壓縮圖片 - (UIImage*)imageWithImageSimple:(UIImage*)image scaledToSize:(CGSize)newSize { // 創建一個圖形文本 UIGraphicsBeginImageContext(newSize); //畫出新文本的尺寸 // new size [image?drawInRect:CGRectMake(0,0,newSize.width,newSize.height)]; //從文本上得到一個新的圖片 UIImage* newImage =?UIGraphicsGetImageFromCurrentImageContext(); // 結束編輯文本 UIGraphicsEndImageContext(); // Return the new image. return?newImage; } 3.親測可用的圖片上傳代碼 //按鈕響應事件 - (IBAction)uploadButton:(id)sender { UIImage?*image = [UIImage?imageNamed:@"1.jpg"]; //圖片名 NSData?*imageData =?UIImageJPEGRepresentation(image,0.5);//壓縮比例 NSLog(@"字節數:%i",[imageData length]); // post url NSString?*urlString =?@"http://192.168.1.113:8090/text/UploadServlet"; //服務器地址 // setting up the request object now NSMutableURLRequest?*request = [[NSMutableURLRequest?alloc]?init] ; [request?setURL:[NSURL?URLWithString:urlString]]; [request?setHTTPMethod:@"POST"]; // NSString?*boundary = [NSString?stringWithString:@"---------------------------14737809831466499882746641449"]; NSString?*contentType = [NSString?stringWithFormat:@"multipart/form-data;boundary=%@",boundary]; [request?addValue:contentType?forHTTPHeaderField:?@"Content-Type"]; // NSMutableData?*body = [NSMutableData?data]; [body?appendData:[[NSString?stringWithFormat:@"\r\n--%@\r\n",boundary]?dataUsingEncoding:NSUTF8StringEncoding]]; [body?appendData:[[NSString?stringWithString:@"Content-Disposition:form-data; name=\"userfile\"; filename=\"2.png\"\r\n"]?dataUsingEncoding:NSUTF8StringEncoding]]; //上傳上去的圖片名字 [body?appendData:[[NSString?stringWithString:@"Content-Type: application/octet-stream\r\n\r\n"]?dataUsingEncoding:NSUTF8StringEncoding]]; [body?appendData:[NSData?dataWithData:imageData]]; [body?appendData:[[NSString?stringWithFormat:@"\r\n--%@--\r\n",boundary]?dataUsingEncoding:NSUTF8StringEncoding]]; [request?setHTTPBody:body]; // NSLog(@"1-body:%@",body); NSLog(@"2-request:%@",request); NSData?*returnData = [NSURLConnection?sendSynchronousRequest:request?returningResponse:nil?error:nil]; NSString?*returnString = [[NSString?alloc]?initWithData:returnData?encoding:NSUTF8StringEncoding]; NSLog(@"3-測試輸出:%@",returnString); 4.對圖庫的操作 選擇相冊: UIImagePickerControllerSourceTypesourceType=UIImagePickerControllerSourceTypeCamera; if (![UIImagePickerControllerisSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) { sourceType=UIImagePickerControllerSourceTypePhotoLibrary; } UIImagePickerController * picker = [[UIImagePickerControlleralloc]init]; picker.delegate = self; picker.allowsEditing=YES; picker.sourceType=sourceType; [self presentModalViewController:picker animated:YES]; 選擇完畢: -(void)imagePickerController:(UIImagePickerController*)pickerdidFinishPickingMediaWithInfo:(NSDictionary *)info { [picker dismissModalViewControllerAnimated:YES]; UIImage * image=[info objectForKey:UIImagePickerControllerEditedImage]; [self performSelector:@selector(selectPic:) withObject:imageafterDelay:0.1]; } -(void)selectPic:(UIImage*)image { NSLog(@"image%@",image);? imageView = [[UIImageView alloc] initWithImage:image]; imageView.frame = CGRectMake(0, 0, image.size.width, image.size.height); [self.viewaddSubview:imageView]; [self performSelectorInBackground:@selector(detect:) withObject:nil]; } detect為自己定義的方法,編輯選取照片后要實現的效果 取消選擇:?-(void)imagePickerControllerDIdCancel:(UIImagePickerController*)picker
{ [picker dismissModalViewControllerAnimated:YES]; } ? 5,創建一個UIBarButtonItem右邊按鈕 UIBarButtonItem?*rightButton = [[UIBarButtonItem?alloc]?initWithTitle:@"右邊"?style:UIBarButtonItemStyleDone?target:self?action:@selector(clickRightButton)]; [self.navigationItem?setRightBarButtonItem:rightButton]; 6,設置navigationBar隱藏 self.navigationController.navigationBarHidden?=?YES;// 7,iOS開發之UIlabel多行文字自動換行?(自動折行) UIView *footerView = [[UIView alloc]initWithFrame:CGRectMake(10, 100, 300, 180)]; UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(10, 100, 300, 150)]; label.text = @"Hello world! Hello world!Hello world! Hello world! Hello world! Hello world! Hello world! Hello world!Hello world! Hello world! Hello world! Hello world! Hello world! Helloworld!"; //自動折行設置 label.lineBreakMode = UILineBreakModeWordWrap; label.numberOfLines = 0; 8,代碼生成button CGRect?frame =?CGRectMake(0,?400,?72.0,?37.0); UIButton?*button = [UIButton?buttonWithType:UIButtonTypeRoundedRect]; button.frame?= frame; [button?setTitle:@"新添加的按鈕"?forState:?UIControlStateNormal]; button.backgroundColor?= [UIColor?clearColor]; button.tag?=?2000; [button?addTarget:self?action:@selector(buttonClicked:)?forControlEvents:UIControlEventTouchUpInside]; [self.view?addSubview:button]; 9.讓某個控件在View的中心位置顯示: (某個控件,比如label,View)label.center?=?self.view.center;10.好看的文字處理
以tableView中cell的textLabel為例子: cell.backgroundColor = [UIColorscrollViewTexturedBackgroundColor];//設置文字的字體
cell.textLabel.font = [UIFont fontWithName:@"AmericanTypewriter"?size:100.0f];
//設置文字的顏色
cell.textLabel.textColor = [UIColor orangeColor];
//設置文字的背景顏色
cell.textLabel.shadowColor = [UIColor whiteColor];
//設置文字的顯示位置
cell.textLabel.textAlignment = UITextAlignmentCenter;
11. 隱藏Status Bar
讀者可能知道一個簡易的方法,那就是在程序的viewDidLoad中加入
12.?更改AlertView背景?
UIAlertView *theAlert = [[[UIAlertViewalloc] initWithTitle:@"Atention"
?? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? message: @"I'm a Chinese!"
??? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ?? ? ? ? delegate:nil?
?? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? cancelButtonTitle:@"Cancel"?
?? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? otherButtonTitles:@"Okay",nil] autorelease];
?? [theAlert show];
?? UIImage *theImage = [UIImageimageNamed:@"loveChina.png"];? ?
?? theImage = [theImage stretchableImageWithLeftCapWidth:0topCapHeight:0];
?? CGSize theSize = [theAlert frame].size;
??? UIGraphicsBeginImageContext(theSize); ? ?
?? [theImage drawInRect:CGRectMake(5, 5, theSize.width-10, theSize.height-20)];//這個地方的大小要自己調整,以適應alertview的背景顏色的大小。
?? theImage = UIGraphicsGetImageFromCurrentImageContext();? ?
UIGraphicsEndImageContext();
?? theAlert.layer.contents = (id)[theImage CGImage];
textField.keyboardAppearance = UIKeyboardAppearanceAlert;
14,狀態欄的網絡活動風火輪是否旋轉
[UIApplication sharedApplication].networkActivityIndicatorVisible,默認值是NO。
15,截取屏幕圖片
//創建一個基于位圖的圖形上下文并指定大小為CGSizeMake(200,400)
UIGraphicsBeginImageContext(CGSizeMake(200,400));?
//renderInContext?呈現接受者及其子范圍到指定的上下文
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
????//返回一個基于當前圖形上下文的圖片
?UIImage *aImage = UIGraphicsGetImageFromCurrentImageContext();
??//移除棧頂的基于當前位圖的圖形上下文
UIGraphicsEndImageContext();
//以png格式返回指定圖片的數據
imageData = UIImagePNGRepresentation(aImage);
16,更改cell選中的背景
??? UIView *myview = [[UIView alloc] init];
??? myview.frame = CGRectMake(0, 0, 320, 47);
??? myview.backgroundColor = [UIColorcolorWithPatternImage:[UIImage imageNamed:@"0006.png"]];
??? cell.selectedBackgroundView = myview;? 17.能讓圖片適應框的大小(沒有確認) NSString*imagePath = [[NSBundle mainBundle] pathForResource:@"XcodeCrash"ofType:@"png"];????
????UIImage *image = [[UIImage alloc]initWithContentsOfFile:imagePath];
???????UIImage *newImage= [image transformWidth:80.f height:240.f];
????UIImageView *imageView = [[UIImageView alloc]initWithImage:newImage];
????????[newImagerelease];
????[image release];
????[self.view addSubview:imageView];
轉載于:https://www.cnblogs.com/liaolijun/p/4564840.html
總結
以上是生活随笔為你收集整理的常用代码整理(重要)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [Eclipse]代码已被写入关于如何切
- 下一篇: KaleidoscopeGame