iOS開發中一些實用小程式碼
-
1.判斷郵箱格式是否正確的程式碼:
//利用正則表示式驗證
-(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected][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 { // Create a graphics image context UIGraphicsBeginImageContext(newSize); // Tell the old image to draw in this newcontext, with the desired // new size [image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)]; // Get the new image from the context UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext(); // End the context 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.對相簿的操作
選擇相簿
UIImagePickerControllerSourceType sourceType = 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 .跳到下個View
nextWebView = [[WEBViewController alloc] initWithNibName:@"WEBViewController" bundle:nil]; [self presentModalViewController:nextWebView animated:YES];
- 6. 建立一個UIBarButton右邊按鈕
UIBarButtonItem *rightButton = [[UIBarButtonItem alloc] initWithTitle:@"右邊" style:UIBarButtonItemStyleDone target:self action:@selector(clickRightButton)]; [self.navigationItem setRightBarButtonItem:rightButton];
- 7.給imageView載入圖片
UIImage *myImage = [UIImage imageNamed:@"1.jpg"]; [imageView setImage:myImage]; [self.view addSubview:imageView];
- 8.設定navigationBar隱藏
self.navigationController.navigationBarHidden = YES;//
- 9.隱藏statusBar:在程式的viewDidLoad中加入
[[UIApplication sharedApplication]setStatusBarHidden:YES animated:NO];
-
10鍵盤透明:
textField.keyboardAppearance = UIKeyboardAppearanceAlert;
- 11.狀態列的網路活動風火輪是否旋轉:
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES ; //預設值是NO。
-
12.擷取螢幕圖片:
//建立一個基於點陣圖的圖形上下文並指定大小為CGSizeMake(200,400) UIGraphicsBeginImageContext(CGSizeMake(200,400)); //renderInContext 呈現接受者及其子範圍到指定的上下文 [self.view.layer renderInContext:UIGraphicsGetCurrentContext()]; //返回一個基於當前圖形上下文的圖片 UIImage *aImage = UIGraphicsGetImageFromCurrentImageContext(); //移除棧頂的基於當前點陣圖的圖形上下文 UIGraphicsEndImageContext(); //以png格式返回指定圖片的資料 imageData = UIImagePNGRepresentation(aImage);
- 13.更改cell選中的背景:
UIView *myview = [[UIView alloc] init]; myview.frame = CGRectMake(0, 0, 320, 47); myview.backgroundColor = [UIColorcolorWithPatternImage:[UIImage imageNamed:@"0006.png"]]; cell.selectedBackgroundView = myview;
相關推薦
iOS開發中一些實用小程式碼
1.判斷郵箱格式是否正確的程式碼: //利用正則表示式驗證 -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected
整理js開發中的實用小工具(一):做一個整合儲存的小工具
在開發工作中,常遇到程式碼重複開發的問題,比如一個分頁,左滑動等常見功能,而我們的解決辦法可能是這次寫一點,下次 copy 一點,如果不能解決問題,再改寫一點。若是沒有把可複用的程式碼抽離出來,做成一個通用的、可配置的小工具,私以為對技能的提升無益,所以在此立下個 flag,以後工作中遇到頻繁開發的功能
iOS開發中一些常用的方法
1.壓縮圖片#pragma mark 處理圖片 - (void)useImage:(UIImage *)image { NSLog(@"with-----%f heught-----%f",image.size.width,image.size.height);
iOS開發UI篇—IOS開發中Xcode的一些使用技巧
pen 檢查 elf eight return ui篇 bar mage \n iOS開發UI篇—IOS開發中Xcode的一些使用技巧 一、快捷鍵的使用 經常用到的快捷鍵如下: 新建 shift + cmd + n 新建項目 cmd + n
【iOS】開發中遇到的小知識點
1.純程式碼寫collectionViewCell 如上所述,近期我一直使用純程式碼寫工程,在建立collectionViewCell時遇到了一個小問題。 純程式碼在tableViewCell中我們使用下面的方法來新增子檢視。 - (instancetype)initWithStyle:(UITa
【iOS - 周總結】開發中遇到的小知識點(2018.12.03-2018.12.08)
補充:本文也是拖遲一週才更新的。也是由於專案原因。 時間:2018.12.03-2018.12.08 1.在主執行緒操作UI 在開發中我們一般只在主執行緒操作UI,但是在一些方法中我們會呼叫一下UI處理。這時候就會報出一些錯誤警告等。 1. UI API called from backgro
【iOS - 周總結】開發中遇到的小知識點(2018.12.10-2018.12.15)
1.WKWebview載入html文字圖片過大,沒有自適應螢幕寬高。 在用Webview載入html文字有時候會遇到載入的圖片過大,不能自適應螢幕寬高的問題。那麼如何解決這個問題?如何使圖片自適應螢幕?很簡單,只需要加一個js就可以。 直接上程式碼: - (WKWebView *)detailWe
【iOS - 周總結】開發中遇到的小知識點(2018.12.17-2018.12.22)
本週知識點遇到的少。 部分知識點是關於圖表的,已在前幾篇文章中顯示。 1.鍵值監聽要注意關閉 在一個播放視訊的頁面返回後,在6s上執行沒問題,可是在5s上執行會崩潰。我檢視日誌發現是kvo的問題。發現我在頁面消失後沒有去除觀察者。從而出現崩潰。 // 在viewdidload中 // 監聽播放
【iOS - 周總結】開發中遇到的小知識點(2018.12.24-2018.12.29)
1.float和double的精度問題。 在開發中我遇到一個問題就是四位或者五位小數的字串轉換成float後相加,在轉換成字串,數值不正確。我開始以為是後臺返回資料的問題,打印出來發現不是。只能想到是精度的問題。這時候我就轉換成double型別,發現結果就不會出錯了。 2.iOS自建證書不
【iOS開發】一些常見的警告解決方案(更新中。。。)
Unknown pattern color for the Background Color attribute 1.背景色屬性為未知模式的顏色 解決:預設xib裡面控制元件的背景色為Default。如果出現警告,可能是你定義的顏色Xcode啟動
關於iOS開發中圖片處理的一些積累(CoreGraphic、CoreImage、GPUImage、OpenGL)
Core Image 前言 貌似公司最近的專案都是和圖片處理有關,拍拍專案中需要將圖片處理成buffer傳到影象匹配拼接演算法中,需要從原圖中摳出一定範圍的影象再貼到新的背景圖中,需要對靜態圖片進行濾鏡操作等等,所以對這方面接觸的相對多一些。
iOS開發中常見的一些異常
ron 文件 數值 range rom hold 要去 param 空間不足 iOS開發中常見的異常包括以下幾種NSInvalidArgumentExceptionNSRangeExceptionNSGenericExceptionNSInternallnconsisten
redis-cli中那些或許我們還不知道的一些實用小功能
玩過redis的朋友都知道,redis中有一個叫做redis-cli的小工具,我們可以利用它在test和develop環境下進行高效的模擬測試,然而在現實環境中, 我們只知道直接鍵入redis-cli啟動命令的互動式,而這個對redis-cli來說絕對是九牛一毛,下面我逐一給
iOS開發中oc程式碼響應js網頁點選事件的方法
在APP開發中我們經常碰到一種情況:app開啟一個網頁,網頁裡有些按鈕需要我們去響應,比如開啟一個遊戲介紹的網頁,點選網頁中的“立即下載”按鈕,app需要跳轉到對應下載介面。那麼我們怎麼響應?程式碼如下: -(void)makeWeb { self.webView
Android開發中一些小記錄
1.有的時候,我們會從庫上check一些結構比較奇葩的工程,由於各種原因導致IDEA無法識別出版本同步工具是什麼,解決辦法,cd到.idea目錄下,在vcs.xml檔案中mapping節點的vcs屬性上配置上工具名稱Git即可(我用的是Git,所以我這裡就配置Git了),然後重啟IDEA就好了。
iOS開發中,對請求資料出現的一些簡單處理
這裡呢是整理的一位老鳥的東西,好東西得分享 大致實現思路就是迴圈便利做比較,如果發現是NSNull型別的就把值改為空字串;這樣的好處就是當資料請求回來,刪除一下資料裡面為<null>型別的東西,避免在直接取的時候產生程式崩潰問題; 兩個方法,一個返回NSA
iOS開發中遇到的常用的小知識
1、launchImage如果不設定,或是圖片尺寸設定不正確,app啟動時會出現短暫的黑屏 2、啟動動畫簡單示例,在app delegate中寫 //圖片擴大淡出的效果開始; //設定一個圖片; niceView = [[UIImageViewalloc] in
Linux中 安裝一些實用小軟體總結
sudo apt-get install virtualbox#華主席推薦 2007年年度最佳軟體,最佳編輯選擇獎得主..... sudo apt-get install ntfs-3g ntfs-config #ntfs寫入支援,裝完後執行ntfs-confi
iOS開發中地圖與定位
視圖 編寫 aps 簡單 -a 第三方 span spa margin 不管是QQ還是微信的移動client都少不了定位功能,之前在微信demo中沒有加入定位功能,今天就寫個定位的小demo來了解一下定位和地圖的東西。地圖和定位看上去是挺高大上一東西。其有使用方法比
iOS開發中,獲取iOS設備型號
bsp ios設備型號 isequal uid eve ide inf turn res 1、首先要導入頭文件 #import <sys/utsname.h> 2、代碼如下 - (NSString *)getDeviceVersionInfo{