个人整理超精密的IOS笔记分析.docx

上传人:b****5 文档编号:12179386 上传时间:2023-04-17 格式:DOCX 页数:84 大小:568.87KB
下载 相关 举报
个人整理超精密的IOS笔记分析.docx_第1页
第1页 / 共84页
个人整理超精密的IOS笔记分析.docx_第2页
第2页 / 共84页
个人整理超精密的IOS笔记分析.docx_第3页
第3页 / 共84页
个人整理超精密的IOS笔记分析.docx_第4页
第4页 / 共84页
个人整理超精密的IOS笔记分析.docx_第5页
第5页 / 共84页
点击查看更多>>
下载资源
资源描述

个人整理超精密的IOS笔记分析.docx

《个人整理超精密的IOS笔记分析.docx》由会员分享,可在线阅读,更多相关《个人整理超精密的IOS笔记分析.docx(84页珍藏版)》请在冰豆网上搜索。

个人整理超精密的IOS笔记分析.docx

个人整理超精密的IOS笔记分析

个人整理超精密的IOS笔记

目录

退回输入键盘1

CGRect1

CGPoint&CGSize1

设置透明度1

设置背景色1

自定义颜色1

竖屏1

横屏1

状态栏高(显示时间和网络状态)1

导航栏、工具栏高(返回)2

隐藏状态栏2

横屏2

屏幕变动检测2

全屏2

自动适应父视图大小:

2

定义按钮2

设置视图背景图片2

自定义UISlider的样式和滑块2

活动表单3

警告视图4

动画效果4

图像、文本标签和详细文本标签6

点击textField外的地方回收键盘7

键盘覆盖输入框7

UIViewController内建TableView8

将plist文件中的数据赋给数组8

UITouch8

UITouch双击图片变大/还原10

GettheLocationofTouches10

GettingTouchAttributes10

TouchPhase11

从Plist里读内容11

获取Documents目录11

获取tmp目录11

利用Safari打开一个链接12

利用UIWebView显示pdf文件、网页。

12

汉字转码13

CheckingforbackgroundsupportonearlierversionsofiOS13

HandingtheKeyboardnotifications13

点击键盘的next按钮,在不同的textField之间换行14

Configuringadateformatter15

tableView的cell高度15

为UINavigationBar设置背景图片16

为UINavigationBar添加自定义背景17

加载图片要及时release18

uiwebview打开doc,pdf文件18

iPhone游戏中既播放背景音乐又播放特效声音的办法19

NSNotificationCenter用于增加回调函数19

UINavigationBar背景Hack19

清除电话号码中的其他符号(源码)20

正则判断:

字符串只包含字母和数字21

一行代码设置UITableViewCell与导航条间距21

修改UITableview滚动条颜色的方法22

下文件之前获取到文件大小的代码22

网络编程总结iphone22

Iphone实现画折线图29

让iPhone屏幕常亮不变暗的方法31

苹果开发网络编程知识总结31

如何隐藏状态栏38

.m文件与.mm文件的区别38

NSLog(@"afd")与NSLog("afd")38

safari其实没有把内存的缓存写到存储卡上38

随机数的使用39

在UIImageView中旋转图像39

在Quartz中如何设置旋转点39

创建.plist文件并存储39

读取plist文件并转化为NSDictionary41

读取一般性文档文件41

隐藏NavigationBar41

如何在iPhone程序中调用外部命令41

如何在iPhone程序读取数据时显示进度窗42

WebKit的基本用法43

为什么不要做iPhone上面的应用44

获取iPhone用户手机号45

在程序中关闭iPhone45

convertthecontentsofanNSDataobjecttoanNSString46

iPhone的特殊URL46

getiphoneuniqueIdentifier46

打开本地网页,与远程网页46

教你如何使用UIWebView47

UIBUttontitleimage不能同时显示48

不要在语言包里面设置空格48

NSNotificationCenter带参数发送48

延时一段时间执行某一函数50

无99美金证书联机开发50

获取IOS设备的基本信息50

用NSDateFormatter调整时间格式的代码50

UIView设置成圆角方法51

iPhone里的frame和bounds区别51

Objective-C内存管理51

iphone更改键盘右下角按键的type53

退回输入键盘

  - (BOOL)textFieldShouldReturn:

(id)textField{

  [textField resignFirstResponder];

}

 

CGRect

CGRectframe=CGRectMake(origin.x,origin.y,size.width,size.height);矩形

NSStringFromCGRect(someCG)把CGRect结构转变为格式化字符串;

CGRectFromString(aString)由字符串恢复出矩形;

CGRectInset(aRect)创建较小或较大的矩形(中心点相同),+较小 -较大

CGRectIntersectsRect(rect1,rect2)判断两矩形是否交叉,是否重叠

CGRectZero高度和宽度为零的/位于(0,0)的矩形常量

 

CGPoint&CGSize

CGPointaPoint=CGPointMake(x,y);  

CGSizeaSize=CGSizeMake(width,height);

 

设置透明度

[myViewsetAlpha:

value]; (0.0

设置背景色

[myViewsetBackgroundColor:

[UIColorredColor]]; 

(blackColor;darkGrayColor;lightGrayColor;

whiteColor;grayColor;redColor;greenColor;

blueColor;cyanColor;yellowColor;

magentaColor;orangeColor;purpleColor;

brownColor;clearColor;)

自定义颜色

UIColor*newColor=[[UIColoralloc]

initWithRed:

(float)green:

(float)blue:

(float)alpha:

(float)]; 

  0.0~1.0

竖屏

320X480

横屏

480X320  

状态栏高(显示时间和网络状态)

20像素 

导航栏、工具栏高(返回)

44像素

隐藏状态栏

[[UIApplicationshareApplication]setStatusBarHidden:

YESanimated:

NO]

 

横屏

[[UIApplicationshareApplication]

setStatusBarOrientation:

UIInterfaceOrientationLandscapeRight].

屏幕变动检测

orientation==UIInterfaceOrientationLandscapeLeft

全屏

window=[[UIWindowalloc]initWithFrame:

[UIScreenmainScreen]bounds];

 

自动适应父视图大小:

aView.autoresizingSubviews=YES;

aView.autoresizingMask=(UIViewAutoresizingFlexibleWidth|

UIViewAutoresizingFlexibleHeight);

 

 定义按钮

UIButton*scaleUpButton=[UIButtonbuttonWithType:

UIButtonTypeRoundedRect];

[scaleUpButtonsetTitle:

@"放大"forState:

UIControlStateNormal];

scaleUpButton.frame=CGRectMake(40,420,100,40);

[scaleUpButtonaddTarget:

self

action:

@selector(scaleUp)

forControlEvents:

UIControlEventTouchUpInside];

 

设置视图背景图片

UIImageView*aView;

[aViewsetImage:

[UIImageimageNamed:

@”name.png”]];

view1.backgroundColor=[UIColorcolorWithPatternImage:

[UIImageimageNamed:

@"image1.png"]];

 

自定义UISlider的样式和滑块

我们使用的是UISlider的setMinimumTrackImage,和setMaximumTrackImage方法来定义图片的,这两个方法可以设置滑块左边和右边的图片的,不过如果用的是同一张图片且宽度和控件宽度基本一致,就不会有变形拉伸的后果,先看代码,写在viewDidLoad中:

//左右轨的图片

UIImage*stetchLeftTrack=[UIImageimageNamed:

@"brightness_bar.png"];

UIImage*stetchRightTrack=[UIImageimageNamed:

@"brightness_bar.png"];

//滑块图片

UIImage*thumbImage=[UIImageimageNamed:

@"mark.png"];

UISlider*sliderA=[[UISlideralloc]initWithFrame:

CGRectMake(30,320,257,7)];

sliderA.backgroundColor=[UIColorclearColor];

sliderA.value=1.0;

sliderA.minimumValue=0.7;

sliderA.maximumValue=1.0;

[sliderAsetMinimumTrackImage:

stetchLeftTrackforState:

UIControlStateNormal];

[sliderAsetMaximumTrackImage:

stetchRightTrackforState:

UIControlStateNormal];

//注意这里要加UIControlStateHightlighted的状态,否则当拖动滑块时滑块将变成原生的控件

[sliderAsetThumbImage:

thumbImageforState:

UIControlStateHighlighted];

[sliderAsetThumbImage:

thumbImageforState:

UIControlStateNormal];

//滑块拖动时的事件

[sliderAaddTarget:

selfaction:

@selector(sliderValueChanged:

)forControlEvents:

UIControlEventValueChanged];

//滑动拖动后的事件

[sliderAaddTarget:

selfaction:

@selector(sliderDragUp:

)forControlEvents:

UIControlEventTouchUpInside];

[self.viewaddSubview:

sliderA];

 

为了大家实验方便,我附上背景图brightness_bar.png和滑块图mark.png

-(IBAction)sliderValueChanged:

(id)sender{

UISlider*slider=(UISlider*)sender;

NSString*newText=[[NSStringalloc]initWithFormat:

@”%d”,(int)(slider.value+0.5f)];

label.text=newText;

}

 

活动表单

 -(IBActive)someButtonPressed:

(id)sender

{

  UIActionSheet*actionSheet=[[UIActionSheetalloc] 

          initWithTitle:

@”Areyousure?

          delegate:

self

          cancelButtonTitle:

@”Noway!

          destructiveButtonTitle:

@”Yes,I’mSure!

          otherButtonTitles:

nil];

  [actionSheetshowInView:

self.view];

  [actionSheetrelease];

}

 

警告视图 

 -(void)actionSheet:

(UIActionSheet*)actionSheetdidDismissWithButtonIndex:

(NSInteger)buttonIndex

{

   if(buttonIndex!

=[actionSheetcancelButtonIndex])

   {

     NSString*message=[[NSStringalloc]initWithFormat:

@”Youcan     

          breatheeasy,everythingwentOK.”];

     UIAlertView*alert=[[UIAlertViewalloc]  

                initWithTitle:

@”Somethingwasdone”

                message:

message

                delegate:

self

                cancelButtonTitle:

@”OK”

                otherButtonTitles:

nil];

     [alertshow];

     [alertrelease];

     [messagerelease];

   }

}

 

动画效果

-(void)doChange:

(id)sender

{

if(view2==nil)

{

[selfloadSec];

}

[UIViewbeginAnimations:

nilcontext:

NULL];

[UIViewsetAnimationDuration:

1];    

[UIViewsetAnimationTransition:

([view1superview]?

UIViewAnimationTransitionFlipFromLeft:

UIViewAnimationTransitionFlipFromRight)forView:

self.viewcache:

YES];

  

  if([view1superview]!

=nil)

{

[view1removeFromSuperview];

[self.viewaddSubview:

view2];

 

}else{

 

[view2removeFromSuperview];

[self.viewaddSubview:

view1];

}

[UIViewcommitAnimations];

}

 

TableView 

#pragmamark-

#pragmamarkTableViewDataSourceMethods

//指定分区中的行数,默认为1

-(NSInteger)tableView:

(UITableView*)tableView 

 numberOfRowsInSection:

(NSInteger)section

{

return[self.listDatacount];

}

 

//设置每一行cell显示的内容

-(UITableViewCell*)tableView:

(UITableView*)tableView 

cellForRowAtIndexPath:

(NSIndexPath*)indexPath

{

staticNSString*SimpleTableIndentifier=@"SimpleTableIndentifier";

UITableViewCell*cell=[tableViewdequeueReusableCellWithIdentifier:

SimpleTableIndentifier];

if(cell==nil){

cell=[[[UITableViewCellalloc] 

initWithStyle:

UITableViewCellStyleSubtitle 

reuseIdentifier:

SimpleTableIndentifier] 

autorelease];

}

   UIImage*image=[UIImageimageNamed:

@"13.gif"];

cell.imageView.image=image;

   

NSUIntegerrow=[indexPathrow];

cell.textLabel.text=[listDataobjectAtIndex:

row];

   cell.textLabel.font=[UIFontboldSystemFontOfSize:

20];

 

   if(row<5)

cell.detailTextLabel.text=@"Bestfriends";

else 

  cell.detailTextLabel.text=@"friends";

returncell;

}

图像、文本标签和详细文本标签

图像:

如果设置图像,则它显示在文本的左侧;文本标签:

这是单元的主要文本(UITableViewCellStyleDefault只显示文本标签);详细文本标签:

这是单元的辅助文本,通常用作解释性说明或标签

UITableViewCellStyleSubtitle

UITableViewCellStyleDefault

UITableViewCellStyleValue1

UITableViewCellStyleValue2

 

#pragmamark-

#pragmamarkTableViewDelegateMethods

//把每一行缩进级别设置为其行号

-(NSInteger)tableView:

(UITableView*)tableViewindentationLevelForRowAtIndexPath:

(NSIndexPath*)indexPath

{

NSUIntegerrow=[indexPathrow];

returnrow;

}

//获取传递过来的indexPath值

-(NSIndexPath*)tableView:

(UITableView*)tableViewwillSelectRowAtIndexPath:

(NSIndexPath*)indexPath

{

NSUIntegerrow=[indexPathrow];

if(row==0) 

returnnil;

returnindexPath;

}

 

-(void)tableView:

(UITableView*)tableViewdidSelectRowAtIndexPath:

(NSIndexPath*)indexPath

{

NSUIntegerrow=[indexPathrow];

NSString*rowValue=[listDataobjectAtIndex:

row];

NSString*message=[[NSStringalloc]initWithFormat:

@"Youselected%@",rowValue];

UIAlertView*alert=[[UIAlertViewalloc]initWithTitle:

@"RowSelected"

message:

message

  delegate:

nil

 cancelButtonTitle:

@"Yes,Idid!

"

 otherButtonTitles:

nil];

[alertshow];

[alertrelease];

[messagerelease];

[tableViewdeselectRowAtIndexPath:

indexPathanimated:

YES];

}

 

//设置行的高度

-(CGFloat)tableView:

(UITableView*)tableViewheightForRowAtIndexPath:

(NSIndexPath*)indexPath

{

return40;

}

NavigationController推出push推出pop

[self.navigationControllerpushViewController:

_detailControlleranimated:

YES];

[self.navigationControllerpopViewControllerAnimated:

YES];

 

Debug:

NSLog(@"%s%d",__FUNCTION__,__LINE__);

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 机械仪表

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1