ios
文章平均质量分 53
小鱼的池塘
这个作者很懒,什么都没留下…
展开
-
ios开发数据库(MagicalRecord)的使用重点内容
ios开发数据库(MagicalRecord)的使用重点内容1,如何创建数据库(如图)2,上代码// 在viewDidLoad 里创建数据库(可以这样理解),如果是全局都是用的话,就在appdelegate里面初始化就行//数据库的创建 [MagicalRecord setupCoreDataStackWithStoreNamed:@"student.sqlite"]; // 增删改查四部原创 2017-01-03 18:58:26 · 445 阅读 · 0 评论 -
ios 强制横屏大总结
整个项目是竖屏的,不能横屏,但是有个播放界面必须要横屏于是就开始找各种横屏的方法,最后在手机上好使了,但是在pad上横屏启动的时候界面是横屏显示,很是苦恼,就又开始了漫长的找资料,直接上代码1,配置plist文件和deployemnt Info -> device orientation(1),plist文件,如图所示,第一项是建立项目时默认有的表示支持手机的屏幕方向(我把支持向右和向左的删了),第转载 2017-04-01 12:12:04 · 18814 阅读 · 0 评论 -
ios 利用auto layout 快速约束xib和storyboardUI界面
1,首先创建工程,美术按照实际的比例出图(最好是2倍和3倍都出),不然会像素失真;2,如图所示约束的对象3,分析:需要约束的对象有,背景、猫头鹰(树一块的)、选择登录方式、登录方式按钮、隐私条款(1),背景:将图片背景导入,选中图片,然后点击右下角的倒数第二个按钮,添加四周约束都为0即可(如图所示)(2),猫头鹰:(这张图片是按照屏幕的宽切出来的),所以宽度就是屏幕的宽,高度也就跟着屏幕的宽度按比例原创 2017-04-11 13:11:44 · 1130 阅读 · 0 评论 -
ios 缩放动画
- (void)hiddenAction{ // 表示view的原来尺寸 self.layer.transform = CATransform3DMakeScale(1, 1, 1); [UIView animateWithDuration:0.5 animations:^{ // 按照比例scalex=0.001,y=0.001进行缩小 se原创 2017-04-13 11:07:14 · 5312 阅读 · 0 评论 -
xcode更新到8后出现黑底白苹果
自从将xcode升到8.3后就没用过模拟器,但是最近要看适配,又没那么多的机型,所以打开模拟器等了半天进度条快到头时不动了,查了好多资料结果是:将下载好的xcode要放到应用程序里面,结果我看到我的的确是没放到里面,立马拖进去,然后把之前的低版本给删除了,重启xcode就好使了!原创 2017-04-13 11:12:31 · 789 阅读 · 0 评论 -
ios-runtime(swift)使用,修改pageControl的小圆点
1,先看需求将一图中的pageControl的圆形小点,改成二图的样子 2, 在pageControl里面没有找到有关修改图片的属性,那么现在怎么解决这个问题呢,一般就是自己定制一个pageControl(比较麻烦的);另外就是,利用运行时+kvc来修改他的属性,直接上代码://MARK:- runtime// 修改pageControl的小点样式extension ViewControl原创 2017-05-17 14:37:06 · 1662 阅读 · 0 评论 -
swift-字符串的截取
// 1, 字符串的截取let url = "www:xiaoyu.com"// 1.1 方式一:将string类型转成nsstring as NSStringlet header = (url as NSString).substring(to: 3)let range = NSMakeRange(4, 8)let middle = (url as NSString).substri原创 2017-05-09 10:49:49 · 578 阅读 · 0 评论 -
ios 类别和类扩展
一自定义分类打印字典转模型的属性声明核心思想与KVC赋值的区别二两种字典转模型的代码KVC方式字典转模型runtime字典转模型具体使用 本文分为两部分: 一:教你怎样一部获取成员属性(通过NSObject+autoLogProperty分类) 二:对比KVC和runtime两种字典转模型的方法并抽取一个分类一:自定义分类,打印字典转模型的属性声明+ (void)crea转载 2017-04-26 19:16:46 · 576 阅读 · 0 评论 -
解决-cocoapods冲突总结
1,在运行 pod install 时出现 pod[!] Unable to add a source with url https://github.com/CocoaPods/Specs.git named master.You can try adding it manually in ~/.cocoapods/repos or via pod repo add.解决办法:1> cd /use原创 2017-04-26 19:25:40 · 907 阅读 · 0 评论 -
swift-类型转换(as?和as!)
// 1, as? as! 的用法 -> 将any类型装换成具体的类型let dic : [String : Any] = ["name" : "zhang", "age" : 13]// 2.1 通过as? 转成我们需要的类型// as?, 通过as? 转成的类型是一个可选类型,系统会自动判断tName是否会转成String类型,如果可以转成,那么获取字符串;如果转不成,就会得到nillet原创 2017-05-09 14:52:08 · 503 阅读 · 0 评论 -
ios-swift-导入Alamofire出坑
前言:在最近的swift项目中要用到网络请求,就用到了Alamofire网络库(是AFNetworking库的swift版本)。将Alamofire利用Cocoapods导入到项目里面,总是下载不了新的版本,下载不了新的版本就是报错,我用的xcode是最新版本8.3.2,swift框架是swift3.0最新框架。我就开始上网查呀,结果废了好大劲才解决。问题所在:根本原因是cocoapods的版本太原创 2017-04-27 12:14:18 · 1507 阅读 · 0 评论 -
ios 单元测试(XCTestCase)覆盖率统计
一,使用XcodeCoverage工具来统计单元测试的覆盖率,点击XcodeCoverage获取二,使用方法:1,将下载下来的XcodeCoverage放到与工程目录平级的地方。2,配置项目环境,2.1在build settings中如图:2.2在build phases 里面设置脚本, XcodeCoverage/exportenv.sh或者输入if [ “${CONFIGURATION}” ==原创 2017-08-05 09:23:37 · 3026 阅读 · 0 评论 -
如何给屏幕添加pop全屏手势
一,目前基本上所有的APP在push到一个界面,可以利用手势滑动界面返回到上一级界面,这就是所谓的pop手势(系统自己默认的是,只能在边缘滑动的时候才能返回),废话不多说直接开始代码1,基于UINavigationController创建自己的导航2,导入头文件#import “objc/runtime.h”这里就需要说一点运行时了,他是比较厉害的,也是比较高逼格的,所以咋们或多或少要知道这个东西。原创 2017-09-26 11:52:26 · 1246 阅读 · 0 评论 -
iphoneX布局适配及iOS 11.0系统适配
一,想必大多开发者将自己的项目跑到iPhoneX模拟器上后,会出现各种异常,包括界面布局的变化,根据自己遇到的情况主要说下面两点大家肯定需要修改的:(1),启动页不是全屏的,(如图)解决办法:如果使用的是LaunchImage方式启动图的话,直接在iOS8.0 and later 下面portrait打钩,就会出现iphoneX的启动图(如图) 将美术做好的图片拖进去就好了,大小是:1125x2原创 2017-10-20 18:32:49 · 2391 阅读 · 0 评论 -
升级xcode10后出现的错误
xcode升级到10后,运行报下面错误,大概意思就是,你的某个sdk/项目里面有多余的info.plist文件:-1: Multiple commands produce '/Users/zhangxiangdong/Library/Developer/Xcode/DerivedData/XCLSDKDemo-dwzoiktyggcxpifyjnpgrdoafkgl/Build/Product...原创 2018-10-12 18:07:01 · 3896 阅读 · 0 评论 -
ios 头像上传前的头像处理
一,图片的压缩,按照比例压缩+ (UIImage*)OriginImage:(UIImage *)image scaleToSize:(CGSize)size{ // 下面方法,第一个参数表示区域大小。第二个参数表示是否是非透明的。如果需要显示半透明效果,需要传NO,否则传YES。第三个参数就是屏幕密度了(非常重要,否则就会失真) UIGraphicsBeginImageContext原创 2017-03-24 18:36:27 · 631 阅读 · 0 评论 -
ios 如何设置启动图片LaunchImage
一,建立新的工程二,在项目目录->targets->general里找到app icons and launch images这一项,如图:(注意launch screen file 表示启动图片资源,这里要清空,咋们不使用lanunchScreen.storyboard加载启动图片)第一步操作完事,会在顶部弹出这么一个框,点击migrate就可以了。(提示的大概意思就是:迁移启动图片到一个资源目录原创 2017-03-24 15:24:33 · 1418 阅读 · 0 评论 -
iOS 苹果内购 In-App Purchase 踩过的坑
项目里面要接苹果支付,结果我研究了一个小时的apple pay,结果经理说是苹果内购,当时就感觉被耍了!好了,那就说说In-App Purchase这个吧,前面所有的准备工作经理做完了,我只是码代码,结果购买的回调都执行,就是界面啥反应都没有,不知道是前期的工作没做好,还是我的代码有问题?上代码:第一步,导入头文件签协议// 在需要购买的界面里面导入,前提是你要将StoreKit框架添加到你的工程里原创 2017-03-14 17:03:30 · 10399 阅读 · 2 评论 -
iOS报-[__NSDictionaryI objectAtIndexedSubscript:]: unrecognized selector sent to instance 0x15f762920
代码之前好使的,但是在更新的时候,不知道改了啥,点击播放视频就会报错,废话不多说,现在开始–排查:Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘-[__NSDictionaryI objectAtIndexedSubscript:]: unrecognized selector sen原创 2017-02-16 12:15:40 · 6188 阅读 · 0 评论 -
iOS tableView上刷新显示下载进度的问题
一,点击下载按钮后,调用的时afnetworking的downLoad方法,具体代码如下@interface ViewController ()<UITableViewDelegate,UITableViewDataSource>{ XLCircleProgress *_circle; CGFloat _progress;}@property (strong,nonatomic)原创 2017-03-01 10:47:49 · 3139 阅读 · 0 评论 -
iOS 导航和tableView/collectionView影响界面
问题:以前一直就存在一个问题,当tableView布局在navigationController里面时,有时会出现界面整体上移的现象,最近又出现了,网上查了下,原来是automaticallyAdjustsScrollViewInsets根据按所在界面的status bar,navigationbar,与tabbar的高度,自动调整了tableView、collectionView、scrollvi原创 2017-03-01 14:28:26 · 423 阅读 · 0 评论 -
iOS NSMutableAttributedString字符串属性
比如,设置一个价格标签为(下图)的样式,其中就包括一个字符串里面设置价格为红色为,原价上面添加中划线,具体封装如下调用方法,需要说明的是,这里的中划线是做了一个label放上去的,NSMutableAttributedString设置好像只能将字体的颜色和线的颜色设置为一样的,所以无法满足需求。nowLabel.text = self.vipSource[0][i];nowLabel.font =原创 2017-03-03 14:37:54 · 951 阅读 · 0 评论 -
iOS UIView简单的缩放动画效果
// 创建一个背景self.bgView = [UIView new]; [self addSubview:self.bgView]; [self.bgView mas_makeConstraints:^(MASConstraintMaker *make) { make.centerX.mas_equalTo(self.bounds.origin.x);原创 2017-03-09 12:29:24 · 5788 阅读 · 0 评论 -
iOS 自定制弹框
调用自定义弹框CustomGeneralAlert *alert = [CustomGeneralAlert alertWithBgimage:@"alert_NoNetWork" Icon1:@"alert_cancle" icon2:@"alert_ture" Cancle:^{ // 点击取消设置 } continueBlock:^{原创 2017-03-06 19:29:16 · 602 阅读 · 0 评论 -
ios 苹果内购踩过的坑
在前面的博客里面已经做了内购代码的说明,现在说说具体的内购流程1,移动端将产品列表(可以存在本地,也可以从自己的服务器取)添加到appstore 2,appstore会返回一个产品信息列表 (这中间的时间可能比较长) 3,我们选中的产品和返回的列表数据比对,有相同的就添加到购买对列里面开始购买 4,购买成功后返回一个购买票据,拿着这个票据去请求appstore验证其正确性,同时也拿着这个票据请原创 2017-03-17 17:42:30 · 2718 阅读 · 0 评论 -
ios 自定制弹框
自定制类似于alertView的弹框,可以根据这个方法自定制自己想要的弹框关键点是要取到controller所在window的keyWindow, [[UIApplication sharedApplication].keyWindow addSubview:self];调用,在需要的地方导入头文件 #import “WindowAlert.h”WindowAlert *alert = [Windo原创 2017-03-27 19:30:34 · 404 阅读 · 0 评论 -
iOS 中利用strong,copy,assign,weak修饰变量的异同点
ARC中以下内容摘自博客http://blog.csdn.net/liushuo19920327/article/details/51465318在iOS开发中定义@property属性时,经常用到assign、weak、strong、copy等关键字。我们经常会考虑在何时应该使用哪个关键字,尤其是在面试的时候,经常会被问到这些关键字之间的区别,下面详细和大家探讨一下:assign:用于对基本数据类转载 2017-03-27 23:48:10 · 3293 阅读 · 0 评论 -
ios ipad里面调用系统相册图片不完整解决方法
项目里面用到了系统相册,在手机里面取出来是完整的,但是在pad里面取出来就是不完整,只是取到左上角的一部分,开始查资料,最后的解决办法是,在调UIImagePickerController这个类时将这个控制器横屏,就可以取到完整的图片了;我是在类别里面做的1,创建UIImagePickerController的类扩展file:你自己的类别名file tyoe:创建类的方式(我们用到是类别 categ原创 2017-04-07 18:18:29 · 5924 阅读 · 0 评论 -
iOS 刷新UI控件的问题
项目里面遇到需要刷新Ui的问题,以前是直接重新加载整个控件在viewWillAppera的方法里面,今天突然想到以前在属性tableView时开辟了一个线程刷新Ui// 利用blok回传状态loginCon.backBlock = ^(BOOL isVip){ // 刷新ui控件 必须在主线程进行 // 表示在deleay时间后执行selector里面的方法原创 2017-03-13 12:04:21 · 2624 阅读 · 0 评论 -
ipad和iPhone在使用UIAlertController的时候出现的错误
如果只是手机使用,按照正常的操作就可以了,但是今天在pad上试了一把,结果奔溃了,为啥呢,打印结果大概意思就是,弹出来的那个框需要挂靠在某个视图上,直接上代码吧这是一段选择头像的提示框:// 编辑头像- (void)editHeader:(UIButton *)btn{ UIAlertController *alert = [UIAlertController alertController原创 2017-03-29 17:12:06 · 4182 阅读 · 3 评论 -
ios10.0以后应用内跳wifi设置界面的坑
直接上代码如果是ios10以下的版本吗,需要在plist文件里面配置NSURL *url = [NSURL URLWithString:@"App-Prefs:root=WIFI"]; float version = [[[UIDevice currentDevice] systemVersion] floatValue]; if (version >原创 2017-03-30 15:42:43 · 1141 阅读 · 0 评论 -
升级xcode10后出现缺失相关静态库的问题
升级到xcode10后运行程序,发现依赖原来苹果的静态库找不到了,我是这样处理了的,直接将这个库删掉,发现没影响。我的项目里面原先都会依赖这两个库lstdc++.6.0.9和lstdc++.6,(做的是腾讯互动直播)。找了会,也没找到之前的库,就直接删了,结果也没有影响。如果过删了有影响的童靴,可以参考这篇文章https://www.jianshu.com/p/a1ddae72191c...原创 2018-10-12 18:18:44 · 1248 阅读 · 0 评论