使用Keychain存储用户敏感信息 iOS的keychain服务提供了一种安全的保存私密信息(密码,序列号,证书等)的方式,每个ios程序都有一个独立的keychain存储.相对于 NSUserDefaults.文件保存等一般方式,keychain保存更为安全,而且keychain里保存的信息不会因App被删除而丢失,所以在 重装App后,keychain里的数据还能使用.从ios 3.0开始,跨程序分享keychain变得可行. 如何需要在应用里使用使用keyChain,我们需要导入Secu…
IOS开发-几种截屏方法 1.        UIGraphicsBeginImageContextWithOptions(pageView.page.bounds.size, YES, zoomScale);        [pageView.page.layer renderInContext:UIGraphicsGetCurrentContext()];        UIImage *uiImage = UIGraphicsGetImageFromCurrentImageContext(…
iOS开发UI篇—iOS开发中三种简单的动画设置 [在ios开发中,动画是廉价的] 一.首尾式动画 代码示例: // beginAnimations表示此后的代码要“参与到”动画中 [UIView beginAnimations:nil context:nil]; //设置动画时长 [UIView setAnimationDuration:2.0]; self.headImageView.bounds = rect; // commitAnimations,将beginAnimation之后的所…
凡是程序的开发者,应该对程序的架构都不陌生.一个程序的架构的好坏对这个程序有着非常重要的作用.今天我们来看一下iOS开发中用要的两种主流的程序架构.这个过程中我们主要以例子的形式展开. 我们来看第一种架构:如下图所示: 这种程序的架构主要原理是创建了一个导航控制器来控制页面之间的切换.这种架构一般把主界面作为导航控制器的根视图控制器.在上图所求的程序架构中,主界面管理了四个界面:微信界面,发现界面,联系人界面,关于我界面.如果程序是第一次运行的时候,进入用户指引界面,然后进入登录界面,输入账户名…
通常情况下,我们的程序需要从服务器读取图片,但如果需要不止一次读取某一张图片的话,就需要做本地缓存了,这样既为用户省一点流量,又能显得你的APP很快. 假如你已经知道了某一张图片的地址,那么第一件事就是要把这张图片下载下来:当然如果是一次性读取的话,可以直接把图片地址给Image控件或者给Bitmapimage对象(实际上这二者是没有去别的),但这无法存到本地,只作为显示用:但是我们要做的是保存到本地,这样肯定是不行的.现在我们就要用到HTTP的东西了,请看下面的代码: async static…
首先在处理iOS-UI中,也许在很多地方需要用到两种甚至多种不同界面之间的传值,相比这也是很多iOS入门成员头疼问题,同样作为新手的我在接触这类传值时候也一脸懵然,经过一段时间的研究,对于简单的传值有一定的了解,下面依次对属性传值,代理传值做一定的说明,希望对于部分有需要的朋友有帮助. 一.属性传值: 通过图片可以看出,属性传值的是当前界面往后面的界面传值.首先根据个人的需要创建两个不同的界面,在前面的 UITextField中输入需要的值然后点击跳转就可以进入下一届面,然后对应的值会显示在下界…
今天在开发过程中用到了UITableView,在对cell进行设置的时候,我发现对UITableViewCell的重用设置的方法有如下两种,刚开始我也不太清楚这两种之间有什么区别.直到我在使用方法二进行重用的时候,具体实现代码如下,其中CJMeetingReplyBasicCell是我自定义的UITableViewCell类型,但是在运行的时候每次都在调用 CJMeetingReplyBasicCell *cell = [tableView dequeueReusableCellWithIden…
UITableView中有两种重用Cell的方法: - (id)dequeueReusableCellWithIdentifier:(NSString *)identifier; - (id)dequeueReusableCellWithIdentifier:(NSString *)identifier forIndexPath:(NSIndexPath *)indexPath NS_AVAILABLE_IOS(6_0); 在iOS 6中dequeueReusableCellWithIdenti…
mybatis是一个支持普通SQL查询,存储过程和高级映射的优秀的持久层的框架,是apache下的顶级项目.mybatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.mybatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO映射成数据库中的记录. 其中,开发dao有两种方法,一种原始的dao开发方法,程序员需要写dao接口和dao实现类.另一种是mapper代理方法,程序员只需要写mapper接口相当于dao接口. 原始dao开发方法 1.编写…
昨天妹子让我帮她解决个问题,本以为可以轻松搞定,但是打开他们项目的一瞬间,我头皮发麻.本身功能不多的一个小项目,解决方案里竟然有几十个类库.仅仅搞明白各个类库的作用,代码层次之间的引用关系就花了一个多小时. 显然可能他们项目结构的代码模型出了问题,设计混乱,不容易上手. 项目中一个好的的代码模型一定是简单.清晰.明了.易于上手的.它总是会让人用起来很舒服,它可以让项目团队成员更好地理解代码,根据代码规范实现团队协作:它可以让各层的逻辑互不干扰.分工协作.各据其位.各司其职,避免不必要的代码混淆.…
 原始Dao的开发方式: 1.创建数据库配置文件db.properties jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/数据库名称 jdbc.name=数据库登录用户名 jdbc.pwd=数据库登录密码 2.创建配置文件SqlMapConfig.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE…
今天为大家介绍一下IOS 的七种手势,手势在开发中经常用到,所以就简单 通俗易懂的说下, 话不多说,直接看代码: // 初始化一个UIimageView UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(100, 100, 300, 300)]; imageView.image = [UIImage imageNamed:@"12.jpg"]; // UIImageView的用户交互是默认关闭的,…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 以前iOS的搜索一般都使用UISearchDisplayController来完成,不过自从iOS 8.0开始,该控制器被标记为废弃,我们可以在iOS 8.0之后使用一个新的搜索控制器UISearchController来完成搜索. 本篇博文将介绍以上2种搜索控制器的简单用法,并比较它们的区别.Let't Go! UISearchDisplayControll…
控件加载图片,plist,懒加载,序列帧动画,添加动画效果. IOS中有2种加载图片的方式. 方式一:有缓存(图片所占用的内存会一直停留在程序中) + (UIImage *)imageNamed:(NSString *)name; 注:必须是png文件.需要把图片添加到 images.xcassets中 例如: @property (weak, nonatomic) IBOutlet UIImageView *iconImageView; self.iconImageView.image=[UI…
UIImage *image = [UIImage imageNamed:@"qq"]; 第一种: // 左端盖宽度 NSInteger leftCapWidth = image.size.width * 0.5f; // 顶端盖高度 NSInteger topCapHeight = image.size.height * 0.5f; // 重新赋值 image = [image stretchableImageWithLeftCapWidth:leftCapWidth topCapH…
数据保存于恢复 用户操作(输入数据)之后,应用程序退出并且终止之后,当用户再次打开应用的时候还是保持原来的状态 一:在storyBoard中设置恢复标志符 二:在AppDalegate中代理方法 -(BOOL) application:(UIApplication *)application shouldSaveApplicationState:(NSCoder *)coder { return YES; } -(BOOL) application:(UIApplication *)applic…
解决方法如下: self.presentingViewController.view.alpha = ;[self.presentingViewController.presentingViewController dismissViewControllerAnimated:YES completion:nil]; 只用两行代码就可以比较完美的解决问题.第一行代码让B的视图变为透明(由于父视图变为透明,任何B的子视图都会透明).这样的效果将是C的视图从A的视图上滑出. 第二行代码中连续获取了两次…
1.archive 归档 数据的保存 1: let result = NSKeyedArchiver.archiveRootObject(contacts, toFile: path as String) 2: println("保存结果\(result)") .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: consolas, "Courier New", cou…
1 设置委托(代理模式)      建一个委托testViewDelegate.h   #import//b中的参数传到a//设置委托方法,例如本文件//在b中.h描述NSObject * delegate;  .m中调委托方法//在a中设置b的控制器实现delegate,eg--aViewControll.delegate=self;//然后在a中赋值 @protocol testViewDelegate@optional-(void)outPut:(NSString *)theTitle;…
#import <QuartzCore/QuartzCore.h> //图片阴影 UIImageView *img; [[img layer] setShadowOffset:CGSizeMake(5, 5)]; [[img layer] setShadowRadius:6]; [[img layer] setShadowOpacity:1]; [[img layer] setShadowColor:[UIColor lightGrayColor].CGColor]; //变灰色 -(UIIm…
作者:卢嘉颖 链接:https://www.zhihu.com/question/27187105/answer/97334347 来源:知乎 著作权归作者所有,转载请联系作者获得授权. 1. pickle >>> from sklearn import svm >>> from sklearn import datasets >>> clf = svm.SVC() >>> iris = datasets.load_iris() &g…
/** Synthsize a weak or strong reference. Example: @weakify(self) [self doSomething^{ @strongify(self) if (!self) return; ... }]; */ #ifndef weakify #if DEBUG #if __has_feature(objc_arc) #define weakify(object) autoreleasepool{} __weak __typeof__(obj…
方式一: [UIView animateWithDuration:1 animations:^{ //动画的内容 CGRect frame = CGRectMake([UIParam widthScreen]-25, 54, 0, 0); [self setFrame:frame]; CGRect frame1 = CGRectMake(0, 0, 0, 0); [self setAnimationFrame:self frame:frame1]; }completion:^(BOOL fini…
1.保存图片和方向 [userDefault setObject:UIImagePNGRepresentation(image) forKey:udUserImage]; [userDefault setObject:[NSNumber numberWithInteger:image.imageOrientation] forKey:udUserImageOrientation]; 2.获取图片和方向 NSData* imageData = [userDefault objectForKey:u…
第一种方法:设置光盘为第一启动项 第一步:进入bios界面 虚拟机中:点击左上角的虚拟机-->电源-->打开电源时进入固件   第二步:使用左右键选择上方的boot 按住shift+ 加号,让cd-rom第一启动项 然后按一下F10保存即可,回车即可   第三步:选择troub..按回车 然后选择救援模式回车   第四步:选择continue 即输入1 千万不要选3   第五步:可以发现救援模式中有所有系统文件 如果以后自己误删了系统文件可以在这里进行复制 自己真正的根在/mnt/sysima…
通常在项目中使用静态库的时候都会有两个版本,一个用于模拟器,一个用于真机,因为Mac和iPhone的CPU不同,才造成了这种情况. 为了模拟器与真机之间切换调试的方便,制作通用版本非常有必要. 现在有两个版本的静态库libSQLite_i386.a(模拟器)与libSQLite_arm.a(真机). 1.打开终端,进入到这两个文件所在的目录: 2.执行:lipo -create libSQLite_i386.a libSQLite_arm.a -output libSQLite.a,这时文件就会…
一. sklearn中提供了高效的模型持久化模块joblib,将模型保存至硬盘. from sklearn.externals import joblib #lr是一个LogisticRegression模型 joblib.dump(lr, 'lr.model') lr = joblib.load('lr.model') 链接:https://www.zhihu.com/question/27187105/answer/55895472 二.pickle >>> from sklearn…
sklearn 中模型保存的两种方法   一. sklearn中提供了高效的模型持久化模块joblib,将模型保存至硬盘. from sklearn.externals import joblib #lr是一个LogisticRegression模型 joblib.dump(lr, 'lr.model') lr = joblib.load('lr.model') 二.pickle >>> from sklearn import svm >>> from sklearn…
在Tensorflow中,有两种保存模型的方法:一种是Checkpoint,另一种是Protobuf,也就是PB格式: 一. Checkpoint方法: 1.保存时使用方法: tf.train.Saver() 生成四个文件: checkpoint                 检查点文件 model.ckpt.data-xxx 参数值 model.ckpt.index 各个参数 model.ckpt.meta 图的结构 2.恢复时使用方法: saver.restore() :模型文件依赖Ten…
学习iOS开发快两年了,去年完成MagViewer之后就因为公司的其他业务繁重,除了维护这个应用之外,只是断断续续地自己做一些实验开发,没有再发布新的应用,这里想整理一下学习过程中的笔记,以便加深印象及以后查阅,计划将这个系列分为基础和实践,基础侧重理论只是和自己的理解,实践则结合MagViewer来解决一些实际问题. Objective-C的数据类型 Objective-C是苹果为iOS开发专门推出的一种程序设计语言,它是C语言的扩展,虽然后来又推出了swift,现在大多数应用还是用Objec…