原來的網址:http://www.buildapp.net/iphone/show.asp?id=10273html
2. 加邊框
myWebView.layer.borderWidth = 5;
myWebView.layer.borderColor = [[UIColorcolorWithRed:0.52 green:0.09 blue:0.07 alpha:1] CGColor];
3. 清空View
for (UIView *subView in [controller.viewsubViews]){
[subViewremoveFromSuperview];
}
4. 添加navigationBar
[self.navigationController.view addSubview:self.navigationController.navigationBar];
5. 保存內存地址
[arrFriendretain];
6. 地圖改變位置
- (void)gotoLocation:(CLLocationCoordinate2D)clloc
{
MKCoordinateRegionnewRegion;
newRegion.center= clloc;
newRegion.span.latitudeDelta= 0.01;
newRegion.span.longitudeDelta= 0.01;
[_googleView.mapsetRegion:newRegion animated:YES];
}
7. 進制轉化
-(CFStringRef)EncodeUTF8Str:(NSString*)encodeStr{
CFStringRefnonAlphaNumValidChars = CFSTR("![ DISCUZ_CODE_1 ]’()*+,-./:;=?@_~");
CFStringRefpreprocessedString = CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault, (CFStringRef)encodeStr, CFSTR(""), kCFStringEncodingUTF8);
CFStringRefnewStr =CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,preprocessedString,NULL,nonAlphaNumValidChars,kCFStringEncodingUTF8);
returnnewStr;
}
//轉換成GB2312
-(NSString*)EncodeGB2312Str:(NSString*)encodeStr{
CFStringRefnonAlphaNumValidChars = CFSTR("![ DISCUZ_CODE_1 ]’()*+,-./:;=?@_~");
NSString*preprocessedString = (NSString*)CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault, (CFStringRef)encodeStr, CFSTR(""), kCFStringEncodingGB_18030_2000);
NSString*newStr = [(NSString*)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)preprocessedString,NULL,nonAlphaNumValidChars,kCFStringEncodingGB_18030_2000) autorelease];
[preprocessedStringrelease];
returnnewStr;
}
8. 時間格式轉換
NSString*strTime=[NSStringstringWithFormat:@"%@",message.time];
NSDateFormatter*inform = [[NSDateFormatteralloc] init];
[inform setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate*parsed = [inform dateFromString: strTime];
[inform release];
NSDateFormatter*toform = [[NSDateFormatteralloc] init];
[toform setDateFormat:@"MM-dd HH:mm"];
cell.lblTime.text=[toform stringFromDate:parsed];
[parsed release];
[toform release];
//時間格式轉換
NSString*strTime=[NSStringstringWithFormat:@"%@",message.time];
if([strTime length]>16) {
strTime=[strTime substringWithRange:NSMakeRange(5, 11)];
}
9. 類
[[Fraction class] t];
或者
Class clazz=[Fraction class];
[clazz t];
10. 內存
NSLog(@"arrFriend count=%d",[arrFriendretainCount]);
地圖
控制地圖的中心和顯示大小
MKCoordinateRegionnewRegion;
newRegion.center= clloc;
newRegion.span.latitudeDelta=0.9;//0.01
newRegion.span.longitudeDelta= 0.9;
[_googleView.mapsetRegion:newRegion animated:YES];
[self.viewinsertSubview:mapView atIndex:0];
11. 動畫
[UIViewbeginAnimations:@"hideView"context:nil];//開始動畫 動畫名稱
[UIViewsetAnimationDuration:0.2];//動畫速度
[UIViewsetAnimationCurve:UIViewAnimationCurveLinear];//動畫方向
scrollVGlide.frame=CGRectMake(0, 0, 320, 200);
scrollVGlide.contentOffset=CGPointMake(0, 45);
[UIViewcommitAnimations];//結束動畫
12. view 裏的視圖
for(UIView*v in[self.viewsubviews]) {
if([v isKindOfClass:[UIButtonclass]]==NO) {
[v removeFromSuperview];
}
}
13. 讀取本地文件 內容
NSString*filePath=[[NSBundlemainBundle] pathForResource:@"1"ofType:@"txt"];
NSString*str=[[NSStringalloc] initWithContentsOfFile:filePath];
NSLog(@"%@",str);
14. 提取字符串
// 獲得引用的用戶名 和發表時間
-(NSString*)WebQuoteUserTime:(NSString*)strText
{
NSString*strResult=[[[NSStringalloc] init]autorelease];
NSString*strMiddle=strText;
NSRangerangQuote1=[strMiddle rangeOfString:@"[quote]"];
NSRangerangQuote=[strMiddle rangeOfString:@""];
NSRangerangSize=[strMiddle rangeOfString:@""];
if(rangQuote1.length>0&&rangQuote.length>0&&rangSize.length>0) {
strResult=[strMiddlesubstringWithRange:NSMakeRange(rangQuote.location+rangQuote.length,rangSize.location-rangQuote.location-rangQuote.length)];
}
returnstrResult;
}
15. xml序列化和反序列化
xml轉換成對象稱爲反序列化
對象轉換成xml 稱爲序列化
16. mac翻..阿..城牆
vbn系統自帶的
17. NSString 初始化
Nsstring *str=nil;//若是不初始化訪問的地址會有錯不肯定
18. 屬性定義
@property(nonatomic,assign)NSInteger nodeCount;
@property(nonatomic,assign) NSInteger unreadMsgSum;
@property(nonatomic,retain)CatalogIDListClass *catalogIDList;
@property(nonatomic,retain)MessageInfoListClass *messageInfoList;
@property(nonatomic,copy)NSString *parentcatalogID;
@property(nonatomic,copy)NSString *Etag_Catalog;
19. 屬性 也要再定義
也要釋放若是用retain 當變量改變是也能夠在改變
20. 每隔一段時間 執行 事件
[NSTimerscheduledTimerWithTimeInterval:0.5target:selfselector:@selector(makeMyProgressBarMoving)userInfo:nilrepeats:NO];
21. 頁面推送方式
[selfpresentModalViewController:picker animated:YES];
22. 命令打開 svn
cddesktop/megafon
svnst .
svnupdate
Lastlogin: Fri Apr 29 10:02:58 on ttys001
Sunnys-iMac:~Sunny$ pwd
/Users/Sunny
Sunnys-iMac:~Sunny$ cd desktop
Sunnys-iMac:desktopSunny$ ls
02-代碼Megafon iphone低保真設計.ppt
1.jpg OOo_3.2.0_MacOSXIntel_install_en-US.dmg
2.jpg QQ
MegaFon head.jpg
Sunnys-iMac:desktopSunny$ cd 02-代碼
Sunnys-iMac:02-代碼Sunny$ ls
MegaFon.xcodeproj ThirdParty build
Src UnitTest
Sunnys-iMac:02-代碼Sunny$ svn st
? build
? Src/ViewControllers/Product.h
? Src/ViewControllers/Product.m
? Src/ViewControllers/head.jpg
M Src/ViewControllers/LoginViewController.m
M Src/ViewControllers/ContactsViewController.h
M Src/ViewControllers/ContactsViewController.m
? MegaFon.xcodeproj/Sunny.mode1v3
M MegaFon.xcodeproj/project.pbxproj
Sunnys-iMac:02-代碼Sunny$ svn up
Atrevision 53.
Sunnys-iMac:02-代碼Sunny$
Sunnys-iMac:02-代碼Sunny$ svn update
Atrevision 53.
Sunnys-iMac:02-代碼Sunny$
就能夠了
23. UITableView
- (NSArray*)sectionIndexTitlesForTableView:(UITableView*)tableView
{
NSArray*arr1=[[NSArrayalloc]initWithObjects:@"A",@"B",@"C",@"D",@"E",@"F",@"G",@"H",@"I",@"J",@"K",@"L",@"M",@"N",@"O",@"P",@"Q",@"R",@"S",@"T",@"U",@"V",@"W",@"X",@"Y",@"Z",@"#",nil];
NSMutableArray*keyArray = [[NSMutableArrayalloc] init];
[keyArray addObject:UITableViewIndexSearch];
//[keyArrayaddObjectsFromArray:arr1
// sortedArrayUsingSelector:@selector(compare:)]];
[keyArray addObjectsFromArray:arr1];
returnkeyArray;
returnarr1;
}
24. 只有在此時cai釋放內存
alloc
retain
copy
25. 鍵盤樣式
field.keyboardType= UIKeyboardTypeNumberPad;
26. 兩個字符串忽略大小寫相等
[self.strFatherVCcaseInsensitiveCompare:@"Prifile"]==NSOrderedSame
27. 鍵盤 return
fieldLastName.returnKeyType= UIReturnKeyDone;
28. 指針
單指針指向 值
雙指針 指向 指針
intNsnumber
[dictionarysetObject:[NSNumbernumberWithInt:1] forKey:@"messageStatus*****ForBack"];
29. 好的電子書
iPhone 開發入門經典
美(johnray 著sean Johnson 袁國忠譯)
人民郵電出版社
30. 簡單的網絡讀出數據
NSString*userName1=[selfEncodeGB2312Str:username];
NSString*strUrl = [NSStringstringWithFormat:@"%@allFriend.asp?username=%@",ServerAddress,userName1];
NSMutableURLRequest*request = [[NSMutableURLRequestalloc] initWithURL:[NSURLURLWithString:strUrl]];
//[requestsetHTTPMethod:@"POST"];
NSData*returnData = [[NSDataalloc]initWithData:[NSURLConnectionsendSynchronousRequest:requestreturningResponse:nilerror:nil]];
[request release];
NSStringEncodingenc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
NSString*returnString=[[NSStringalloc]initWithData:returnData encoding:enc];
[returnData release];
if([returnString length]>42) {
returnString=[returnStringsubstringFromIndex:42];
}
else{
NSLog(@"returnString數據不對");
}
NSError*error;
NSDictionary*dict= [XMLReaderdictionaryForXMLString:returnString error:&error];
returndict ;
31. 簡體中文編碼
NSStringEncodingenc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
NSString*returnString=[[NSStringalloc] initWithData:bufencoding:enc];
《斯坦福:iphone開發教程》[中英雙語字幕]
http://v.163.com/special/opencourse/iphonekaifa.html
《斯坦福:iphone開發教程》[中英雙語字幕]
更新至第10集
32. GDataXMLDocument 轉成string類型
doc = [[GDataXMLDocumentalloc] initWithRootElement:element];
{
NSString *xmlStr = [[NSString alloc] initWithData:[doc XMLData]encoding:NSUTF8StringEncoding];
NSLog(@"%@", xmlStr);
[xmlStr release];
}
[doc release];
doc = nil;
33. 循環依賴
@classSmsProcessor;
CocoaData
NDGroup*group = [NDGroupAccessor groupWithID:groupID];
NSSet*set = [group unityMessages];
NSMutableArray*array = nil;
for(UnityMessage*msg inset) {
if(msg.msgType== SMS) {
[array addObject:msg];
}
}
34. 數據庫操做
/**
Method to get smsesfrom group
@param groupID aunique identification of group
@returns a Sms ofNSArray
*/
- (NSArray*)smsesFromGroupID:(NSString*)groupID
{
if(groupID == nil) {
returnnil;
}
[selfresetLastError];
NSError*error = nil;
MegaFonModel*megaFonModel = [MegaFonModelsharedModel];
NSFetchRequest*fetchRequest =[[NSFetchRequestalloc] init];
NSEntityDescription*entity=[NSEntityDescription
entityForName:@"SMS"
inManagedObjectContext:megaFonModel.managedObjectContext];
[fetchRequest setEntity:entity];
//設置條件
NSPredicate*predicate = [NSPredicatepredicateWithFormat: @"(groupID = %@)",groupID];
[fetchRequest setPredicate:predicate];
NSArray*array = [megaFonModel.managedObjectContextexecuteFetchRequest:fetchRequest error:&error];
[fetchRequest release];
if(error) {
_lastError= [error retain];
array = nil;
}
if(!error&&[array count]>=1){
returnarray;
}
returnnil;
}
35. 改變scroolview的位置
[self.tableViewsetContentOffset:CGPointMake(0, 50.f) animated:NO];
36. 設置Button字體設置
UIButton*btn=[[UIButtonalloc] initWithFrame:CGRectMake(0, 0, 60, 50)];
[btn setTitle:@"124"forState:UIControlStateNormal];
btn.titleLabel.font=[UIFontsystemFontOfSize:19];
[self.viewaddSubview:btn];
37. UITextField
UITextField*fieldPwd=[[UITextFieldalloc] initWithFrame:CGRectMake(65, 40, 200, 25)];
fieldPwd.borderStyle=UITextBorderStyleRoundedRect;
fieldPwd.keyboardType=UIKeyboardTypeASCIICapable;
fieldPwd.secureTextEntry= YES;
fieldPwd.text=@"sara@gmail.com";
[cell.contentViewaddSubview:fieldPwd];
[fieldPwdrelease];
fieldPwd=nil;
38. tableview下拉不上升
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[table_view setContentOffset:CGPointMake(0, 44) animated:NO];
NSIndexPath *tableSelection = [table_viewindexPathForSelectedRow];
[table_view deselectRowAtIndexPath:tableSelection animated:NO];
}
39. UIActionSheet
if (nil == as_select) {
as_select= [[UIActionSheet alloc] initWithTitle:nil delegate:selfcancelButtonTitle:@"取消"destructiveButtonTitle:nil otherButtonTitles:@"插入表情",@"轉發",nil];
as_select.actionSheetStyle =UIActionSheetStyleAutomatic;
}
[as_select showInView:self.view];
40. 設置狀態欄
Status Bar is InitiallyHidden:隱藏上面的狀態欄,在.plist裏添加項
Status Bar Style:狀態欄樣式
41. 漸變色
CAGradientLayer*gradientLaye = [[CAGradientLayer alloc] init];
[gradientLaye setFrame:CGRectMake(0, 100, 320, 100)];
//CAGradientLayer *gradientLayer = (CAGradientLayer*)self.layer;
gradientLaye.colors =
[NSArray arrayWithObjects:
/*
(id)[UIColorcolorWithRed:1.0 green:0.0 blue:0.0 alpha:1.0].CGColor,
(id)[UIColorcolorWithRed:0.0 green:1.0 blue:0.0 alpha:1.0].CGColor,
(id)[UIColorcolorWithRed:0.0 green:0.0 blue:1.0 alpha:1.0].CGColor,
*/
(id)[UIColorcolorWithRed:1.0 green:1.0 blue:1.0 alpha:1.0].CGColor,
(id)[UIColorcolorWithRed:0.45 green:0.45 blue:0.45 alpha:1.0].CGColor,
nil];
[gradientLaye setStartPoint:CGPointMake(0.0, 1.0)];
//[gradientLayer setEndPoint:CGPointMake(100, 100)];
[self.layer addSublayer:gradientLaye];
[gradientLaye release];
42. 隱藏Tabbar
CallingViewController*callingVC=[[CallingViewControlleralloc] init];
callingVC.hidesBottomBarWhenPushed=YES;
[self.navigationControllerpushViewController:callingVC animated:YES];
43. 獲得觸摸的位置
(void)touchesBegan:(NSSet*)touches withEvent:(UIEvent *)event {UITouch* touch = [touches anyObject];CGPoint pt = [touch locationInView:self];printf("point = %lf,%lf\n", pt.x, pt.y);}
44. SearchBar 添加標題
asearchBar.prompt= @"輸入字母、漢字或電話號碼搜索";
45. 判斷是否在View裏
CGRectContainsPoint(imgVBlue.frame, position)
46. 把視圖添加到最上方
[self.viewbringSubviewToFront:second];
47. 子視圖
[btnsubviews]
48. 得到本地文件內容
NSString*filePath=[[NSBundlemainBundle]pathForResource:@"1"ofType:@"txt"];
NSString*str=[[NSStringalloc]initWithContentsOfFile:filePath];
NSLog(@"str=%@",str);
49. Property list的用法
讀取plist
NSString*errorDesc = nil;
NSPropertyListFormatformat;
NSString*rootPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0];
NSString*plistPath = [rootPath stringByAppendingPathComponent:@"untitled.plist"];
if(![[NSFileManagerdefaultManager] fileExistsAtPath:plistPath]) {
plistPath = [[NSBundlemainBundle] pathForResource:@"untitled"ofType:@"plist"];
}
NSData*plistXML = [[NSFileManagerdefaultManager] contentsAtPath:plistPath];
NSMutableDictionary*mudict = (NSMutableDictionary*)[[NSPropertyListSerializationpropertyListFromData:plistXMLmutabilityOption:NSPropertyListMutableContainersAndLeaves
format:&format
errorDescription:&errorDesc] retain];
NSArray* keysArr = [[[mudict allKeys] sortedArrayUsingSelector:@selector(compare:)] retain];
if(!mudict) {
NSLog(@"Error reading plist: %@, format:%d",errorDesc, format);
}
NSLog(@"keyarr ==%@",[keysArr objectAtIndex:0]);
50. 正則
英文字母數字下劃線是:/^\w+$/;
漢字的是:/^[\u0391-\uFFE5]+$/;
51. 當前時間 計時
timebegin= [NSDatetimeIntervalSinceReferenceDate];
52. 越過tabbar添加view
[self.tabBarController.viewaddSubview:VGlide];
53. scrollview 向上移動
scrollVGlide.contentOffset=CGPointMake(0, 50);
54. 改變tabbar的背景顏色
UIImageView* img = [[UIImageViewalloc] initWithImage:[UIImageimageNamed:@"bg.png"]];
img.frame= CGRectOffset( img.frame, 0, 1);
[tabBarCtr.tabBarinsertSubview:img atIndex:0];
[img release];
55. 如何隱藏狀態欄
[ UIApplication sharedApplication].statusBarHidden = YES;
56. 獲取本地的時區?
[NSTimeZonelocalTimeZone];
57. textview刪除按鈕
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)rangereplacementText:(NSString *)text{
NSLog(@"content is %@, range is %@, text is%@",textView.text,NSStringFromRange(range),text);
if ([text length]==0) {
NSLog(@"NO");
return NO;
}else {
return YES;
}
}
58. textview只現實 聯想字
_inputTxtFeild.hidden=NO;// By Sunny 隱藏原來的
[[_inputTxtFeild.subviewsobjectAtIndex:0] setHidden:YES];
_inputTxtFeild.scrollEnabled=NO;
59. mac svn服務
SmartSVN
60. 斷點調試
(gdb)pchatFrame
$1 = {
origin = {
x = 0,
y = 364
},
size = {
width = 320,
height = 57
}
}
61. Ps下載地址
http://soft.macx.cn/soft1265.htm
62. 橡皮擦 擦出imgView
CGPointcurrentPoint = [touch locationInView:imageView];
UIGraphicsBeginImageContext(imageView.frame.size);
[imageView.image drawInRect:imageView.bounds];
CGContextClearRect (UIGraphicsGetCurrentContext(), CGRectMake(currentPoint.x, currentPoint.y, 30, 30));
imageView.image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
63. uiview 設置圓角
UIImageView *v=[[UIImageView alloc]initWithFrame:CGRectMake(25, 25, 100, 100)];
v.image=[UIImage imageNamed:@"face01.png"];
[[v layer] setBorderWidth:2.0];//畫線的寬度
[[v layer] setBorderColor:[UIColor blackColor].CGColor];//顏色
[[v layer]setCornerRadius:15.0];//圓角
v.backgroundColor=[UIColor redColor];
//[v.layer setCornerRadius:8.0];
[v.layer setMasksToBounds:YES];
[self.view addSubview:v];
[v release];
64. 建立 NSIndexPath
NSIndexPath*indexpath = [NSIndexPathindexPathForRow:0inSection:<#(NSUInteger)section#>];
65. actionSheet從下方彈出
[actionSheet showFromTabBar:self.tabBarController.tabBar];
[actionSheet showInView:[UIApplicationsharedApplication].keyWindow];
經過secion row 獲得cell
uitableviewcell*cell=(uitableviewcell*)[tableView cellForRowAtIndexPath:indexPath];
66. 經常使用字體
[lblNamesetFont:[UIFontfontWithName:@"Helvetica-Bold"size:18.0]];
[lblContentsetFont:[UIFontfontWithName:@"Helvetica"size:14.0]];
Program received signal: 「EXC_BAD_ACCESS」.: 內存釋放過多
67. 隱藏鍵盤
UIView *v = [[[UIView alloc] initWithFrame:CGRectZero]autorelease];
[begintimesetInputView:v];
68. 父控制器 改變
self.parentViewController.arrAllUnityMsg= nil;
[self.navigationControllerpopViewControllerAnimated:NO];
- (void)allOnebox {
OneBoxFolderView* switchFolder = [[OneBoxFolderViewalloc] init];
switchFolder.myParentViewController= self;
switchFolder.hidesBottomBarWhenPushed= YES;
[self.navigationControllerpushViewController:switchFolder animated:YES];
[switchFolder release];
}
OneBoxViewController*_myParentViewController;
self.myParentViewController.arrAllUnityMsg= [[BusinessManagersharedManager].messageSearchManagergetOneBoxMessages];
[self.navigationControllerpopViewControllerAnimated:NO];
69. 枚舉類型
typedefenum{
ShowAll= 0, //顯示全部的聯繫人
SendMsg= 1, //發送信息
SendEmail= 2//發送郵件
} Sendtype; //在初始化時,須要制定發送的方式,在彈出
70. Iphone4 標準 字體
Arial 黑體 ,
71. 官方中文版的《iPhone人機界面指南》
72. 從新顯示tabbar
NSMutableArray*list1 = [[NSMutableArrayalloc]init];
[list1 addObjectsFromArray:self.navigationController.viewControllers];
OneBoxViewController*oneboxCtr = [[OneBoxViewControlleralloc] initWithNibName:nilbundle:nil];
//[list1 removeLastObject];
//[list1 removeLastObject];
//[list1 removeLastObject];
[list1 removeAllObjects];
[list1 addObject:oneboxCtr];
self.navigationController.viewControllers= (NSArray*)list1;
[oneboxCtr release];
[list1 release];
73. svn調試
Last login: Mon Jul 25 10:42:35on ttys001
Sunnys-iMac:~ Sunny$ ls
Desktop Movies Sites
Documents Music 發送註冊信息
Downloads Pictures
Library Public
Sunnys-iMac:~ Sunny$ cdDesktop/
Sunnys-iMac:Desktop Sunny$ ls
02-設計文檔dial
123 tabbarTest.zip
123.zip trunk.zip
AllOfOneFriendController.rtf zhanghao.rtf
CoredataTest 文檔
HWtrunk 加班.rtf
HWtrunk.zip 歸檔.zip
MobileHIG(iPhone 人機界面).pdf 自定義cell和coredata
QQ.rtf 未命名文件夾
RCS項目雜亂五章聯繫和好友主要字段.xlsx
coreData 小demo
Sunnys-iMac:Desktop Sunny$ cdHWtrunk
Sunnys-iMac:HWtrunk Sunny$ ls
BluePoint@2x.png RedPoint@2x.png ringbacktone.mp3
English.lproj Src ringtone.mp3
Images ThirdParty tap.aif
Libs UnitTest zh_CN.lproj
Model arrowLoad@2x.png
RCS.xcodeproj build
Sunnys-iMac:HWtrunk Sunny$ svncleanup
Sunnys-iMac:HWtrunk Sunny$
刪除Xcode 命令
一條命令卸載Xcode和iPhone SDK
打開Terminal,輸入如下代碼並回車便可
sudo /Developer/Library/uninstall-devtools --mode=all
node