
ios
gx_wqm
日拱一卒,功不唐捐。
展开
-
ios 浏览器控件UIWebView
UIWebView是ios中用的比较多的空间之一,只需要将链接添加竟来,就可以快速的浏览网页。1、简单的加载网页: @interface ViewController (){ UIWebView *_webView;}@end - (void)viewDidLoad { [super viewDidLoad]; _webVie原创 2015-06-23 15:26:34 · 521 阅读 · 0 评论 -
ios网络连接状态监测
Reachability是苹果封装的一个用于监测网络状态的类,同时还可以检测出连接网络的类型(无连接,WiFi,3G),非常的轻巧,易用。下载路劲:苹果官方网站:http://developer.apple.com/library/ios/#samplecode/Reachability/Introduction/Intro.html github:https://github.com原创 2015-06-22 21:32:24 · 593 阅读 · 0 评论 -
ios通知中心
ios通知中心用得不是很多,可能是效率不及代理,所以在相对于代理机制而言,通知中心确实用的比较少。当然其也有代理不可比拟的优势:代码的耦合度非常好,可避免代理之间的层层迭代。通知中心的原理是当事件发生时,检查内部的消息转发表,将消息发送给注册者。所以,谁想要获得消息,只需要向通知中心注册即可,注册方法:- (void)addObserver:(id)observer selector:(S原创 2015-06-25 10:13:05 · 467 阅读 · 0 评论 -
UITextField隐藏键盘的几种方式
UITextField是ios中实用频率很高的额控件,文本输入之后通常需要隐藏软键盘,而隐藏的原理都是通过使得UITextField失去第一响应者,以下是几种隐藏的方式。第一种:通过设置代理UITextFieldDelegate, 并在 -(BOOL)textFieldShouldReturn:(UITextField *)textField里面使得空间失去第一响应者:@interfa原创 2015-06-24 20:27:31 · 852 阅读 · 0 评论 -
UITextFiled使用总结
UITextFiled是ios中使用频率不亚于按钮或tableView的控件,下面记录一下常用的api及属性,方便回顾:1.输入密码(输入的数字变为黑点显示):_textField.secureTextEntry = YES;2.占位符:_textField.placeholder = @"请输入账号";3、允许编辑框按比例横向变化(还有很多属性),比如说从原创 2015-06-24 21:35:38 · 451 阅读 · 0 评论 -
ios category(类别又称分类)的优缺点
定义:类别是可以通过不使用继承而为现有类添加新方法的一种机制。 思考:为什么苹果添加这种完全可以通过继承来实现的机制呢?原创 2015-06-04 15:46:44 · 2468 阅读 · 0 评论 -
CGContextAddArc与CGContextAddArcToPoint参数解析
1 .void CGContextAddArc(CGContextRef c, CGFloat x, CGFloat y, CGFloat radius, CGFloat startAngle, CGFloat endAngle, int clockwise)作用:用来绘画弧线或园。参数:CGContextRef c,设备上下文,用来保存绘画信息,e.g: 颜色,线性,原创 2015-06-08 13:15:45 · 1749 阅读 · 0 评论 -
NSString的drawInRect: withAttributes:的参数解析
- (void)drawInRect:(CGRect)rect withAttributes:(NSDictionary *)attrs 作用:在view上绘画字体(重绘通常是在uiview或是其子类时,在drawRect中使用).参数解析:第一个参数rect,即待绘画字体的坐标;第二个参数attrs:即字体的属性,是一个字典型数据,里面存放字体的属性的键值对,e.g:字号16,字体颜原创 2015-06-07 23:43:33 · 1165 阅读 · 0 评论 -
自定义UIView以实现自绘
有时候我们需要自绘uiview以实现自己的需求,比如根据坐标点绘制出连续的曲线(股票走势图),就需要自绘uiview了。原理:继承uiview类(customView),并实现customview的drawRect即可。首先看一下鲜果图:代码如下:// .h#import @interface CustomView : UIView原创 2015-06-08 00:13:40 · 1476 阅读 · 0 评论 -
iOS 图片边框及阴影效果
为图片添加边框和阴影效果需要用到图层。先看一下demo效果图(上图是原图,下面则是效果图):源码: UIImageView *imageView = [[UIImageViewalloc]initWithImage:image]; imageView.frame = CGRectMake(50, 250, image.size.width原创 2015-06-09 10:51:30 · 1402 阅读 · 0 评论 -
ios简单动画的实现
通过简单的调用UIView的类函数(void)animateWithDuration: animations:可以快速的实现ui控件的简单实用的动画效果本文通过一个按钮来交替控制日期选择器从屏幕底部以动画的方式弹出以及收回,效果图:demo源码:@interface ViewController (){ BOOL bShowAction原创 2015-06-09 16:54:18 · 413 阅读 · 0 评论 -
ios程序的启动过程
在学习ios程序的时候,一般都会通过xcode的向导生成项目,且程序也能跑起来,很明显是xcode为我们做了很的工作,而这些工作对于想学好ios开发的我们而言是必须要了解的。1.学过c语言的同学应该知道,c程序的入口点是main函数,既然object-c是面向对象的才,是不是也是从遵从了c的入口点呢?在你新建的工程supporting files下看看是否有main.m这个文件,确实如我们猜想原创 2015-07-04 16:58:31 · 530 阅读 · 0 评论 -
ios把BOOL和OC对象互换
ios把BOOL装换为OC对象:NSNumber *number = [NSNumber numberWithBool:boolValue];ios把OC对象装换为BOOL:BOOLboolValue = [boolNumbernumber];原创 2015-07-26 19:03:09 · 7628 阅读 · 0 评论 -
NSString和NSdata的相互装换
1.NSdata 转NSString: [[NSString alloc] initWithData:(NSData *)data encoding:(NSStringEncoding) encoding;e.g:读取text.plist文件存放的内容并转化为NSString类型NSData *data = [[NSData alloc] initWithContentOfFile:原创 2015-06-15 13:55:02 · 426 阅读 · 0 评论 -
uiwebview通过cookie自动登录
这两天弄uiwebview通过通过cookie自动登录,搞的昏头转向,各种查资料,发帖子,到q群里面问,终于弄出来,在此记录下来,以备以后有用。ios中获取cookies的方法:NSHTTPCookieStorage *nCookies = [NSHTTPCookieStorage sharedHTTPCookieStorage];再具体获取某个域的cookies:NSArray *coo原创 2015-07-26 21:03:27 · 3806 阅读 · 0 评论 -
ios 判断app是否为第一次启动
判断app是否为第一次启动,几乎是每一个app都会用到的!下面就是最常用的判断的方法之一:在delegate的didFinishLaunchingWithOptions里面添加下面这一句就行了:if (![[NSUserDefaults standardUserDefaults] boolForKey:@"firstLaunch"]) { //第一次启动 [[NSUserDef原创 2015-07-28 11:26:19 · 812 阅读 · 0 评论 -
ios 协议和代理
在ios中,提到协议(protocol)必然涉及代理(delegate), 反之亦然。1. 协议:在ios中没有其他语言的接口或是虚函数这一说,但是有一个类似的功能,就是协议:声明一组方法规范。下面以租房为例://协议@protocol rentRoom@requested-(void)getRoom; // 找房子@optional:-(int)pri原创 2015-07-28 15:17:30 · 584 阅读 · 0 评论 -
UIImagePickerController中文界面
UIImagePickerController的按钮是英文的,可以通过下面的方法改为中文。方法一:1.PROJECT->Info->Localizations添加Chinese(注:默认只有英文)2.修改TARGETS-->Info-->Localization native development region: China (注:默认是英文)方法原创 2015-08-11 14:05:03 · 363 阅读 · 0 评论 -
UIImage与NSData间的转换
有时候我们需要对uimage进行编辑,但又想备份编辑之前的图片,怎么办呢?这样子?UIImage *imageCopy = [image copy]; 但你会发现image被编辑之后,通过imageCopy 获取到的也是编辑过的图片(浅拷贝),你是不是想说那我mutableCopy,呃?!想法不错,但是UIImage没有实现这个协议啊!那怎么办,自己实现NSMutableCopying 协议,原创 2015-08-25 10:44:03 · 1057 阅读 · 0 评论 -
ios隐藏状态栏
在ios6或是其之前可使用:[[UIApplication shareApplication] setStatusBarHidden:YES];ios6 之后:重写UIViewController的:- (BOOL) prefersStatusBarHidden{ return YES;}就可以了!原创 2015-08-26 20:31:48 · 362 阅读 · 0 评论 -
iOS 2d自定义绘图浅析
有ios编程经验的人都知道,iOS中任何可视化图像界及其元素都是通过继承uiview或是其子类实现的。而UIView是通过继承UIResponder这个仅响应事件,而不能显示的事件类,那说明UIView对UIResponder做了可视化的扩展。这个可视化的扩展就是CALayer。实际上,uiview对于可视化的任何操作都是通过对其属性CAlayer实现的,uiview本身仅仅是具有响应事件原创 2015-06-09 12:55:09 · 385 阅读 · 0 评论 -
ARC工程导人非ARC的代码
今天解析html的时候用到了不适用arc的库(TFHpple),里面有很多的retain,release, autorelease等方法,第一反应是删掉,但是想保持源码的完整性,上网找到了方法,记录以备忘记。首先.将文件到如工程中,选择工程—TARGETS-Build Phases-Complie Sources,你会发现下面有需要编译的文件,在需要不适用arc的文件后面添加 -fno-obj原创 2015-07-21 21:11:41 · 378 阅读 · 0 评论 -
ios的类别(category)和扩展(Extension)
一、类别:类别(category)在使用中还是用的比较多的,用起来也很方便,特别是在为框架类进行拓展的时候,在不继承类的条件下给类添加方法!实现格式(以为NSSing类添加一个方法为例):@interface NSString(CNSString) //CNSString可以随便取,只要不和其他的类重名-(BOOL)isURL;@end可能你会这样想,我通过继承也能原创 2015-07-23 10:06:12 · 475 阅读 · 0 评论 -
ios 获取设备的ip地址
不多说,直接上代码:1. 首先添加两个头文件:#import#import2. 添加如下代码: //获取IP地址-(NSString*)getIPAddress{ NSString *address = @"error"; struct ifaddrs *interfaces = NULL; struct ifaddrs *temp_add原创 2015-08-04 13:05:56 · 409 阅读 · 0 评论 -
苹果开发者账号的类型
苹果开发者账号的类型一共有四种:个人账号、公司账号、企业账号、教育账号。个人账号:688人民币,只能有一个开发者,100台测试设备,在app store上销售时只能显示你的app id。公司账号:688人民币,可以允许多个开发者协作开发,100台测试设备,在app store上销售时只能你公司的名字,但申请的时候需要填写公司的邓白氏编码(D-U-N-S),邓白氏编码这个还真令人原创 2015-08-16 18:37:15 · 916 阅读 · 0 评论 -
ios 单例(arc版本)
我们知道C++等语言只要通过静态对象的检测并把构造函数,赋值构造函数声明为私有成员函数就可以实现单例了。oc也是这个原理,但是oc没有构造函数的概念,那是不是通过定义全局的静态类实例了,再接口的每次判断该实例变量是否初始化就可以了:static singleObject *instanse;@implementation singleObject+(singleOb原创 2015-08-05 15:21:20 · 389 阅读 · 0 评论 -
去掉UIScrollView的滚动条
_scrollView.showsVerticalScrollIndicator= FALSE;//垂直滚动条_scrollView.showsHorizontalScrollIndicator= FALSE;//水平滚动条原创 2015-08-19 11:08:23 · 2379 阅读 · 0 评论 -
uiView 设置圆角
_view.layer.cornerRadius = 10;_view.masksToBounds = YES;原创 2015-08-19 20:21:39 · 398 阅读 · 0 评论 -
ios9 qq微信微博等分享用不了的解决方案
升级到ios9后发现qq分享用不了,点击分享的时候xcode的日志中打出: canOpenURL: failed for URL: "mqqopensdkapiV3://qzapp" - error: "(null)"canOpenURL: failed for URL: "mqqwpa://qzapp" - error: "(null)"canOpenURL: failed for原创 2015-10-18 16:01:05 · 1563 阅读 · 0 评论 -
ios 生成随机数
Objective-c中并没有提供相应的函而是沿用了C语言中提供了rand()、random()、arc4random()几个函数。他们之间有什么区别呢?1. rand 如果你在循环中这么使用的话:int fadeNum = rand()/10,在程序运行期间每次num的值都和第一次一样,也就是说是个伪随机序列,那么如果想获得真正的随机数那可以这样:sand(time(NULL));原创 2015-10-18 18:52:01 · 476 阅读 · 0 评论 -
ios 微信分享审核上架注意事项
现在的app基本上都会有分享的功能:qq、微型、新浪等功能,在集成的工程中需要注意一些问题:判断手机是否安装了相关的app,没有安装的话需将对应的分享隐藏起来,否则苹果在审核的时候,如果手机没安装这些分享app的时候,这些功能用不了,他觉得这是个bug或是你有意引导用户安装其他的app,不会通过审核: //判断是否安装了微型 if (![WXApi isWXAppInstalle原创 2015-10-18 15:38:34 · 2059 阅读 · 0 评论 -
xcode7编译报错:xxx does not contain bitcode 解决方法
解决方法:TARGET-build setting -->build options -->enable bitcode 设置为NO.想了解更多(http://www.cocoachina.com/ios/20150818/13078.html)原创 2015-10-18 16:13:23 · 416 阅读 · 0 评论 -
ios图片压缩
ios 图片的压缩分为两种:容量和尺寸1.容量的压缩:NSData *data = UIImageJPEGRepresentation(image, 0.5); //(图片, 压缩系数)UIImage *newImage = [UIImage imageWithData: data];2.尺寸的压缩:CGSize size = CGSizeMake(100, 100);//压缩原创 2015-10-06 17:24:54 · 454 阅读 · 0 评论 -
ios截图代码
CGRect cutRect = CGRectMake(0, 0, _imageView.frame.size.width, _imageView.frame.size.width); //截图矩形 UIGraphicsBeginImageContextWithOptions(cutRect.size, YES, 0.0); //创建基于当前上下文 [_imageView.原创 2015-10-07 20:18:05 · 511 阅读 · 0 评论 -
ios图片等比例自适应UIImageview
有时候图片的宽高不等于UIImageview的宽高,如果之间imageView.image = image的话,会发现图片会变形,这个时候只需:imageView.contentMode = UIViewContentModeScaleAspectFill;就会发现图片很好的适应了imageview的尺寸。原创 2015-10-06 17:35:20 · 3013 阅读 · 0 评论 -
ios图形上下文CGContext
CGContext即图形上下文,一个很抽象名词,但理解之后觉得这个词总结的很精辟。图形上下文:网上很多人将其形象的比作画家作画的画布,想要作画,就需要画布(喜欢的话也可以成为画纸),编程绘图也是一样的,想要绘画想要的效果,就首先的有画布,也就是图形上下文,然后通过驱动也硬件显示出来。凡是说到图形上下文就涉及到自绘,图像处理,自定义uiview并重写drawRect时、CALayer回调原创 2015-10-08 20:38:33 · 682 阅读 · 0 评论 -
locationInView和translationInView的区别
在ios手势中,经常看到locationInView和translationInView的区别:1. locationInView类UIGestureRecognizer的方法,translationInView是UIPanGestureRecognizer的方法。2. locationInView是指当前点击在指定视图中的位置,translationInView是在指定的坐标系中移动,听原创 2015-10-08 11:55:29 · 3530 阅读 · 2 评论 -
改变UISearchBar的背景色
有时候我们需要改变UISearchBar的背景,以融入当前所需的环境。如果不想了解原理的话,请直接绕过此段看下面的代码。在iOS7.0之前,UISearchbar视图包含UISearchBarBackground和UISearchBarTextField两个视图,在iOS7.0及之后,UISearchbar视图先包含了一个UIView视图,UIView视图里才是UISearchBarBackg原创 2015-10-10 21:59:36 · 550 阅读 · 0 评论 -
ios之viewWithTag
如果在一个supView上添加了几个子subView,又不想将子subView定义为成员变量,但又想找到其中的某个subView,那怎么办呢?可以通过viewWhitTag来解决这个问题:UIView *subViewA = [[UIView alloc] init];UIView *subViewB = [[UIView alloc] init];UIView *subV原创 2015-10-09 19:43:02 · 507 阅读 · 0 评论 -
ios设置按钮不能点击并变灰色
button.userInteractionEnabled=NO; //控件不能点button.alpha=0.5; //变暗原创 2015-10-12 15:30:31 · 6397 阅读 · 0 评论