
IOS
白鼠闹东京
这个作者很懒,什么都没留下…
展开
-
UITableViewCell的选中时的颜色设置
转自:http://blog.youkuaiyun.com/a6472953/article/details/75322121.系统默认的颜色设置//无色cell.selectionStyle = UITableViewCellSelectionStyleNone;//蓝色cell.selectionStyle = UITableViewCellSelectionStyleBlue;//灰色cell.s转载 2017-04-06 16:50:33 · 839 阅读 · 0 评论 -
UIScrollView使用autolayout技术。
转自:http://dadage456.blog.163.com/blog/static/30310744201491141752716使用autolayout可以很方便的对ui进行定位。。但是有个特别的存在,就是UIScrollView。让UIScrollView实现autolayout比较麻烦。。记录下来以便后期查看。。1、创建一个空白的UIViewController2、将UIScrollV转载 2017-01-10 21:46:07 · 505 阅读 · 0 评论 -
使用SQLite.Swift实现SQLite3.0的读写
开发环境: Swift2.3 , IOS8.0+ ,XCode8.2导入SQLite.swiftsource 'https://github.com/CocoaPods/Specs.git'platform :ios, '8.0'use_frameworks!target 'sql' do pod 'SQLite.swift', '~> 0.10.1'end应用实例// Sear原创 2016-12-31 21:15:22 · 2738 阅读 · 2 评论 -
IOS开发之读取使用AutoLayout约束的控件Frame
开发环境 Swift2.3 XCode8.2因为开发一个插件,需要动态的读取ScrollView的frame,但是,读取出来的数值一直是在storyboard中的大小(storyboard设计时的大小),因为设计的时候基于Iphone6s,宽度为375,所以,插件里读取的一直都是375,但是Iphone7Plus的实际宽度是414。而scrollView实际是添加了宽度约束等于superView的原创 2017-01-07 12:38:18 · 1951 阅读 · 0 评论 -
Swift 3.0 变更小结
转自:http://www.jianshu.com/p/4820aa9a2625Apple 官网 Swift 3.0 版本变更文档新增访问符关键字: open, fileprivateApple 官网解释 open: 公开访问接口, 类和成员变量是可以被模块内外 override public: 公开访问接口, 但是只能在模块内被 override internal: 只在模块中访问 fi转载 2016-12-30 09:34:02 · 615 阅读 · 0 评论 -
Swift3.0带来的变化汇总系列一——字符串与基本运算符中的变化
原文链接:http://my.oschina.net/u/2340880/blog/692818一、引言Apple与今年6月13日正式发布了Swift3.0的第一个预览版本,并且相应推出了Xcode8的第一个bate版本。开发者已经可以在Xcode8bate版上来体验Swift3.0的新特性。首先,Swift3.0确实带来了很大改变,许多Swift中的结构体API都进行了更新,例如String,A转载 2016-12-30 09:23:39 · 382 阅读 · 0 评论 -
IOS开发之Swift生成二维码
开发环境:Swift2.3 XCode8.0本来是借鉴了别人的代码,时间太久了,无法找到原文。记录下来,以后用起来方便func createQRForString(qrString:String, qrImageNamed:String? = nil) -> UIImage { // 将字符串转换为二进制 let data = qrString.dataUsingEncoding(原创 2017-01-06 15:24:06 · 1016 阅读 · 0 评论 -
关于UIView的autoresizingMask属性的研究
在 UIView 中有一个autoresizingMask的属性,它对应的是一个枚举的值(如下),属性的意思就是自动调整子控件与父控件中间的位置,宽高。enum { UIViewAutoresizingNone = 0, UIViewAutoresizingFlexibleLeftMargin = 1 << 0, UIViewAutoresizi转载 2016-12-29 11:02:32 · 235 阅读 · 0 评论 -
Swift 2.3 迁移 Swift 3.0 遇到困难和部分解决方案
警告:Expression of type ‘UIViewController?’ is unused// 赋值给_,否则会报Expression of type 'UIViewController?' is unused_ = self.navigationController?.popViewController(animated: true)isKindOfClass没有了// 2.3vi原创 2016-12-27 16:56:00 · 1027 阅读 · 0 评论 -
Swift与Js通过WebView交互
开发环境:Swfit 2.3 XCode 8.2基础概念JSContext, JSContext是代表JS的执行环境,通过-evaluateScript:方法就可以执行一JS代码JSValue, JSValue封装了JS与ObjC中的对应的类型,以及调用JS的API等JSExport, JSExport是一个协议,遵守此协议,就可以定义我们自己的协议,在协议中声明的API都会在JS中暴露出来原创 2017-01-04 09:45:16 · 8671 阅读 · 2 评论 -
IOS 使用XIB制作Storyboard使用的自定义控件
开发环境:IOS8.0+ Swift 2.3创建一个UIView 遗憾的是Also create XIB file是灰色的。没办法,只能分开创建了 新建文件,选择User Interface中的View然后命名为CustomTest。 在CustomTest.Xib中的File’s Owner的属性面板的Customer class选择CustomTest, 记住是File’s Ow原创 2016-12-18 16:10:53 · 3108 阅读 · 0 评论 -
IOS中使用UITableViewCell的按钮事件
开发环境:IOS8.0+ Swift 2.3创建UITableViewCell 记得要选择:Also create XIB file填写Identifier 填写Identifier,这个会在后面用到完成XIB的布局和约束连线创建按钮点击的协议protocol CouponTableViewCellDelegate { func couponBtnClick(couponID:Int原创 2016-12-18 15:02:21 · 3430 阅读 · 3 评论 -
Swift使用代码进行约束
版本为Swift2.3let imgCoupon = UIImageView()imgCoupon.frame = CGRectMake(0, 0, 16, 16)imgCoupon.loadImgByNamed("coupon")imgCoupon.tag = 12345cell.addSubview(imgCoupon)imgCoupon.translatesAutoresizing原创 2016-12-14 16:01:23 · 2421 阅读 · 0 评论 -
XCode8新建项目中使用swift2.3
在XCode8中的新建项目,默认的版本为Swift3.0,如果要使用2.3的话,需要使用兼容模式Build Settings -> Swift Compiler - Version -> Use Legacy Swift Language Version 然后设置其为 YES,然后你就可以使用 Swift 2.3 了。原创 2016-11-23 20:19:01 · 2230 阅读 · 0 评论 -
Xcode 8 drag and connect @IBAction incorrectly adds "WithSender" on connection inspector IB
习惯了,先写代码然后再连线,结果升级xcode8后,应用不断的闪退,用代码打开storyboard后,发现绑定的方法后面多了个WithSender,删掉就好了原创 2016-11-14 20:35:40 · 611 阅读 · 0 评论 -
IOS开发-在UIViewController中锁定竖屏
转自:http://www.jianshu.com/p/6ebfc7294e13因为APP中有视频播放,所以不能全局锁定,只能在一些实在不想横屏的Controller中进行锁定代码如下: override func shouldAutorotate() -> Bool { return false } override func supportedInterfa转载 2016-11-17 10:13:00 · 2293 阅读 · 0 评论 -
IOS开发之 一起用Swift来玩一玩3D Touch
Swift 2.3 IOS 8.0 XCode 8.0添加入口标签在这里只说下静态的好了,暂时还用不到动态的,e.g.<key>UIApplicationShortcutItems</key><array> <dict> <key>UIApplicationShortcutItemType</key> <string>ReceiveMoney</s原创 2017-02-07 14:45:51 · 2118 阅读 · 0 评论 -
XCode打开Archive界面
打完包,手贱的关掉了,找不到哪里打开了。于是重新打包~~~ window ->organizer长点心吧,/(ㄒoㄒ)/~~原创 2017-02-08 15:26:59 · 16079 阅读 · 1 评论 -
UITableView删除某一行
self.tableView.beginUpdates()self.list.remove(at: indexpath.row)self.tableView.deleteRows(at: [indexpath], with: .bottom)self.tableView.endUpdates()原创 2017-04-11 17:14:49 · 3150 阅读 · 0 评论 -
UITableView的侧移编辑功能,可多个
extension viewController: UITableViewDelegate { func tableView(_ tableView: UITableView, canEditRowAt indexPath: IndexPath) -> Bool { return true } func tableView(_ tableView: UITabl原创 2017-04-11 16:25:13 · 676 阅读 · 0 评论 -
Swift常用的String类扩展
常用的扩展// 字符串类扩展extension String { /// 获取字符串绘制的高度 /// /// - parameter font : 要绘制的字体,将会影响行高等 /// - parameter width : 绘制的宽度 /// - returns : 字符串绘制的最大高度 func getMaxHeight原创 2017-03-15 22:56:56 · 1470 阅读 · 0 评论 -
ios上LaunchImage 在模拟器上显示但在真机上不显示
转自:http://blog.youkuaiyun.com/dauihiy/article/details/45866319LaunchImage 在模拟器上显示但在真机上不显示,可能是给你图片的人直接把jpg文件改后缀为png然后给你了,但本质上它还是一张jpg图片,真机根据你给的png信息无法解析,解决办法是,再找美工要一张真的的png图片,要不就把图片后缀改为jpg,然后自己用ps改格式。转载 2017-03-23 18:50:56 · 707 阅读 · 0 评论 -
SnapKit更新约束-Swift3.0
导入SnapKitimport SnapKit修改约束var snpCenterX: Constraint?var snpCenterY: Constraint?/// 偏移量,默认 0var offset:CGPoint = .zero { didSet { snpCenterX?.update(offset: offset.x) snpCenterY?原创 2017-03-14 13:57:33 · 2573 阅读 · 0 评论 -
通过cell中的元素获取cell的indexPath以及长按tableview获取选中cell的indexPath
Swift 3.0 XCode 8.0通过点击cell中的按钮获取cell的indexPath如,点击cell中的按钮,删除获取修改等操作。// 注意层次关系let cell = btn.superview as! UITableViewCell// 通过cell本身获取cell的indexPathlet indexpath = self.tv.indexPath(for: cell)长按t原创 2017-03-13 22:19:06 · 3439 阅读 · 0 评论 -
初探CALayer属性
转自:http://www.cocoachina.com/ios/20161205/18278.html一直觉得一个view就一个layer到今天才发现不是这样子的其关系图如下CALayer属性表如下CALayer和UIView的区别1.UIView是UIKit的(只能iOS使用),CALayer是QuartzCore的(iOS和mac os通用)2.UIView继承UIResponder,CAL转载 2017-03-22 11:54:32 · 264 阅读 · 0 评论 -
Swift3.0对UIColor进行方法扩展
Swift 3.0 XCode 8.0总是感觉IOS里面颜色的调用好麻烦,每次都要转成10进制,稍微封装一下。后面用起来方便多了/// 获取颜色的方法extension UIColor { /** 获取颜色,通过16进制色值字符串,e.g. #ff0000, ff0000 - parameter hexString : 16进制字符串 - paramete原创 2017-03-11 13:03:31 · 3567 阅读 · 0 评论 -
Swift压缩图片以及修改图片颜色
extension UIImage { func scaleToSize(size:CGSize) -> UIImage { UIGraphicsBeginImageContextWithOptions(size, false, 0) self.draw(in: CGRect(x: 0, y: 0, width: size.width, height: siz原创 2017-03-28 09:10:43 · 1365 阅读 · 0 评论 -
Swift3.0扫描条形码和二维码实例
Swift 3.0 Xcode 8.0 分离的代码,不能直接运行import UIKitimport AVFoundationclass SaomaViewController: UIViewController, AVCaptureMetadataOutputObjectsDelegate { // 扫描相关字段 var avSession:AVCaptureSession!原创 2017-03-06 14:50:02 · 1088 阅读 · 1 评论 -
UITextField的那点事
转自:http://sindrilin.com/ios-dev/2016/09/23/UITextField的那点事UITextField 被用作项目中获取用户信息的重要控件,但是在实际应用中存在的不少的坑:修改 keyboardType 来限制键盘的类型,却难以限制第三方键盘的输入类型;在代理中限制了输入长度以及输入的文本类型,但是却抵不住中文输入的联想;键盘弹起时遮住输入框,需要接收键盘弹起收转载 2017-03-19 11:18:53 · 422 阅读 · 0 评论 -
使用SnapKit约束label、scrollview和tableview
Snapkit:https://github.com/SnapKit/SnapKit一、约束UILabel这个其实本来是很简单的,被自己搞的复杂了,当设置UILabel的时候frame:CGRect.zero就可以了,另外行数设置为:0,一定一定不要设置固定高度 /(ㄒoㄒ)/~~,frame里不要,约束里也不要,可以设置大于等于。let lb = UILabel(frame: CGRect.ze原创 2017-03-08 14:37:20 · 4758 阅读 · 0 评论 -
Swift开发中的常用开源项目连接
我自己常用的一些开源项目 项目名称 备注 连接 Alamofire 网络请求 https://github.com/Alamofire/Alamofire SwiftyJSON JSON格式化 https://github.com/SwiftyJSON/SwiftyJSON MBProgressHUD 提示(OC) https://github.com/原创 2017-03-01 10:27:23 · 564 阅读 · 0 评论 -
开源 Swift AutoLayout 框架 SnapKit 介绍
转自:http://www.cnblogs.com/missingcat92/p/4686248.html?utm_source=tuicool&utm_medium=referral自从水果发布了5代,苹果为了适配多种屏幕尺寸,搞出了一个所谓的AutoLayout来解决问题,iOS程序员们从此走上了苦逼的适配路。“适配”本身其实并不是一个头疼的事情,对于4-6寸的手机来说,只要制定一套规则,就不转载 2017-02-09 11:11:39 · 1024 阅读 · 0 评论 -
UILabel使用attributedText后,lineBreakMode为ByTruncatingTail不生效
开发环境:Swift 2.3问题代码:let lb = UILabel(frame:frame)lb.numberOfLines = 2lb.lineBreakMode = .ByTruncatingTaillb.attributedText = ....如果不用lb.attributedText, 而使用text的话,没任何问题。NSMutableParagraphStyle中有设置lb.原创 2017-02-17 17:40:01 · 3523 阅读 · 0 评论 -
IOS开发-使用Kingfisher加载图片
简介: Kingfisher (中文名:翠鸟) 是一个异步下载和缓存图片的库,SDWebImage的Swift 实现版。 https://github.com/onevcat/Kingfisher开发环境: Xcode 8.0 Swift 2.3Cocoapod:source 'https://github.com/CocoaPods/Specs.git'platform :io原创 2016-11-29 14:40:45 · 5170 阅读 · 0 评论 -
在xcode8下,使用swift2.3版本的cocoapod的插件
前面说了在xcode8下的项目,需要兼容2.3版本的语言,同样的,cocoapod维护的包也需要同样的设置 Build Settings -> Swift Compiler - Version -> Use Legacy Swift Language Version然后设置其为 YES世界瞬间就安静了!!原创 2016-11-29 13:54:37 · 642 阅读 · 0 评论 -
基于Swift语言开发微信、QQ跟微博的SSO授权登录代码分析
转自:http://www.myexception.cn/swift/1991018.html前言Swift 语言,怎么说呢,有一种先接受后排斥,又欢迎的感觉,纵观国外大牛开源框架或项目演示,Swift几乎占据了多半,而国内虽然出现很多相关技术介绍和教程,但是在真正项目开发中使用的占据很少部分,原因一是目前熟练它的开发者并不多,二是版本不太稳定,还需要更成熟可靠的版本支持,但总之未来还是很有前景的转载 2016-10-08 22:06:37 · 1127 阅读 · 0 评论 -
No such module alamofire
像往常一样到github上,clone了一份到电脑上,然后加入到项目中。 今天,很特别的出现了“No such module alamofire”,搜了一下,解决方案五花八门,都没有解决问题。 最后在stack overflow里找到了一个类似的答案 http://stackoverflow.com/questions/32996438/alamofire-no-such-module-er原创 2016-09-19 15:46:11 · 6575 阅读 · 0 评论 -
[备忘]IOS开发中关闭键盘的两种常用方法
1、使用键盘中的return键在文本框上右键拖动到辅助编辑器中,按下图选择注意,type直接选择为UITextField,这样可以避免在代码中进行类型转换@IBAction func txtFieldDoneReturn(sender: UITextField) { sender.resignFirstResponder()}Event 选择Did End On Exit,在键盘中点击了r原创 2016-08-23 21:51:10 · 543 阅读 · 0 评论 -
Swift修改tabBarItem选中色和tabBar背景色
tabBarItem系统默认为蓝色,这里提供一个方法,能够将颜色修改为自己希望的 1)为自己的Tab Bar Controller添加一个控制器 XXTabBarController,关联起来(我使用的StoryBoard做的页面) 2)设置选中色: 在XXTabBarController中,viewDidLoad() 方法下写上self.tabBar.translucent = false转载 2016-09-12 13:10:00 · 4279 阅读 · 0 评论 -
IOS开发-使用Alamofire 和 SwiftyJSON 完成服务器api的调用
准备工作,下载开源类:Alamofire 地址SwiftyJSON 地址引用到项目将下载的文件拖到项目当中,将Alamofire.xcodeproj文件拖到项目中,Embedded Binaries中添加Alamofire.framework IOS,这样,这个类就已经引入到项目当中了。网上操作步骤很多的,就不上图了。代码import Alamofireimport SwiftyJSON//原创 2016-09-12 10:56:56 · 1674 阅读 · 0 评论