swift
记录swift应用及问题
小溪彼岸
万里长征,日进一步 , 好记性不如烂笔头
展开
-
Swift-画虚线、虚线圆
代码如下:case .LayerType_XuXian_Circle: self.title = "画虚线" //画虚线 let dotteShapLayer = CAShapeLayer() let mdotteShapePath = CGPathCreateMutable()原创 2016-04-14 18:48:11 · 6830 阅读 · 0 评论 -
Swift学习之基本语法
1.数组的创建及操作//数组var array=[2,3,4,5]var array1:Array=[2,3,3,4]var array2:Array<Int>=[2,2,2,3]var array3:[Int]=[2,3]var array4:[Double]=[2.2,3.3]var array5:[String]=["333"]var array6:Array<Any>=["2",2]var原创 2016-02-21 01:22:20 · 580 阅读 · 0 评论 -
Swift-Array数组操作
1.使用sortInPlace排序 //sortInPlace排序 var array = [3,2,4,6,8,33] //默认 array.sortInPlace() print("strArray--->\(array)") //升序 array.sortInPlace{ $0 < $1 } print("strArray--->\(array)") //降序 array.sor原创 2016-03-11 18:44:42 · 801 阅读 · 0 评论 -
Swift 3.0 遇到的一些问题
1、导航控制器跳转时隐藏tabbar在导航控制器中重写以下方法override func pushViewController(_ viewController: UIViewController, animated: Bool) { if self.childViewControllers.count > 0 { viewController.hidesBo原创 2017-01-09 15:35:30 · 1046 阅读 · 0 评论 -
Flutter笔记-Android&iOS原生交互
Flutter同React Native一样,可以调用原生方法。Flutter 代码如下:import 'package:flutter/material.dart';import 'package:flutter/services.dart';import 'dart:async'; // 异步void main() => runApp(new MyApp());...原创 2018-11-23 18:38:38 · 3807 阅读 · 0 评论 -
Swift学习之初识
Swift 简介WWDC 2014年6月3号 苹果开发者大会 发布,2010年7月开始开发基于 C 和 Objective-C语言,使用现有的Cocoa和Cocoa Touch框架,无缝兼容C、Objective-C语言兼具编译语言的高性能(Performance)和脚本语言的交互性(Interactive)支持Playground,它允许程序实时预览,无需频繁创建和运行App简洁、安全、原创 2015-08-19 23:52:21 · 477 阅读 · 0 评论 -
Swift3.0 的一些差异整理
更新到Swift3.0后有些差异是需要我们重新了解的。Swift 3改变可以分为两个大的部分移除在Swift 2.2中弃用的方法语言更加安全,优雅1、Range Range在Swift3.0的初始化方式有所不同var range:Range<Int> = Range(uncheckedBounds: (0,5))Range初始化方法需要我们传入一个元祖,一个最小值和一个最大值public i原创 2017-02-28 10:57:15 · 716 阅读 · 0 评论 -
Swift-网络、本地数据解析
数据地址let _urlPath = NSBundle.mainBundle().pathForResource("news_list.json", ofType: nil)1.对对象进行解析 //解析对象 func jsonUser(){ //Swift对象 let user = [ "user": "张三",原创 2016-03-13 16:41:27 · 1493 阅读 · 0 评论 -
iOS10新特性之UIRefreshControl的使用
UIRefreshControl是iOS10 的新特性之一,支持UIScrollView及其所有子类。首先需要一个UIScrollView或者UIScrollView的子类,然后为其添加UIRefreshControl具体做法如下:import UIKitclass ViewController: UIViewController { var scrollvifew:UIScrollView原创 2017-02-27 15:42:14 · 1058 阅读 · 0 评论 -
Swift-predecessor(), successor(), advancedBy()
在截取字符串时遇到几个没用过的函数特此记. startIndex:访问String第一个位置的字符 endIndex: 访问String最后一个位置的字符predecessor(), successor(), advancedBy() 一个String.Index值可以通过调用predecessor()方法来访问其前一个index, 调用successor()来访问其后一个index原创 2016-03-13 18:49:26 · 3246 阅读 · 3 评论 -
Swift 解决循环引用问题
虽然Swift和Objective-C一样,默认也是基于ARC进行内存管理的,虽然如此,但如果不注意任然会出现循环引用问题,导致内存泄露。Objective-C 在使用block时解决循环引用可以使用 __block 或者 __weak 修饰对象,那么在Swift中该如何解决强引用问题呢?当然苹果也为我们提供了修饰词,weak 和 unowned ,weak 和无主引用weak 和unowned 的原创 2017-03-20 16:25:25 · 1164 阅读 · 0 评论 -
Swift-处理耗时操作
在下载文件处理时会好耗时操作,使用线程可以有效处理耗时操作 //添加任务队列 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) { () -> Void in //处理耗时操作 //操作完成后调用主线程刷新界面原创 2016-04-05 16:04:19 · 1936 阅读 · 0 评论 -
iOS10新特性之SFSpeechRecognizer的使用
SFSpeechRecognizer是iOS10新特性之一,用来进行语音识别的。1、使用前需要导入头文件import Speech2、设置请求权限//请求权限 SFSpeechRecognizer.requestAuthorization { (state) in print(state) }3、配置info.plist//添加一条权限Pri原创 2017-02-27 16:17:20 · 3927 阅读 · 1 评论 -
Swift-归档解归档
Swift中对象进行归档写入文件时需要对对象属性进行归档操和解归档操作 ,对象方法中需重写以下两个方法 //从nsobject解析回来 init(coder aDecoder:NSCoder!){ self.name=aDecoder.decodeObjectForKey("name") as! String self.phone=aDecoder.deco原创 2016-04-05 11:58:14 · 2525 阅读 · 0 评论 -
Swift通过类名创建对象
OC中可以使用NSClassFromString将字符串直接转换为类名,在Swift中利用NSClassFromString不出意外结果都为nil,因为Swift中根据字符串转换的方法需要加上YourAppName,格式为”YouAPPName.类名”写了一个类目,具体代码如下:import Foundationimport UIKitextension NSObject { func swi原创 2016-06-18 16:23:58 · 4455 阅读 · 0 评论 -
iOS10新特性之UIViewPropertyAnimator的使用
UIViewPropertyAnimator是iOS的新特性,通过UIViewPropertyAnimator你可以细粒度控制自己制作的动画,易于抹除、逆向、暂停和重启动画,并重构动画帧使之平滑流畅。这些功能也可以用于控制器的转场动画。OC :#import "ViewController.h"@interface ViewController ()@property(nonatomic) UIV原创 2017-02-27 15:16:17 · 663 阅读 · 0 评论 -
Swift-字符串:String 的操作
1.判断是否是空值//判断是否是空值 let str:String = "" if str.isEmpty{ print("str is nil") }打印结果:str is nillet str1:String = "hahahaha" if str1.isEmpty{ print("str is nil") }else{ print("str i原创 2016-03-11 18:09:39 · 597 阅读 · 0 评论 -
Swift CAShapeLayer,UIBezierPath绘制图形
1、绘制矩形 //利用CAShapeLayer绘图一个简单的矩形 let layer=CAShapeLayer() layer.frame=CGRectMake(110, 100, 150, 100) layer.backgroundColor=UIColor.blackColor().CGColor view.layer.addSu原创 2016-03-06 18:31:01 · 3580 阅读 · 0 评论 -
Swift工程使用OC类
1.创建一个Swift工程命名为OCSwift 2.随便创建一个OC文件 会出现提示,选择Create Bridging Header,系统会创建一个桥接文件 3.配置工程,确保Objective-C Compatibility Header为当前工程下的桥接文件 4.创建文件EndView #import <Foundation/Foundation.h>@interface End原创 2016-01-13 09:45:20 · 980 阅读 · 0 评论 -
Pods written in Swift can only be integrated as frameworks; add `use_frameworks!` to your Podfile or
在使用cocoapod导入swift第三方时出现这样的问题: Pods written in Swift can only be integrated as frameworks; add use_frameworks! to your Podfile or target to opt into using it. The Swift Pod being used is: Charts 一开始我原创 2016-04-28 18:47:26 · 10909 阅读 · 3 评论 -
OC工程调用Swift方法
为防止出问题,建议以这样的方法做: 1.建一个OC工程命名为SwiftOC 2.新建一个swfit文件命名为Test.swift,会弹出提示,选择Create Bridging Header建立桥接文件,系统会建立“工程名-Bridging-Header.h” 3.配置工程 设置Defines Module 为Yes 设置Product Module Name 为当前工程名原创 2016-01-12 20:13:49 · 12739 阅读 · 8 评论 -
Objective-C(Swift) IBDesignable/IBInspectable
iOS8新特性IBDesignable/IBInspectable,利用运行时机制,可以把属性映射到XIB上了,同时我们UI类的自定义属性也可以映射上去,可以直接在XIB或者Storyboard中设置UI类的属性。Objective-C实例: .h中代码如下@interface ZWView : UIView@property (nonatomic, assign)IBInspectable CG原创 2016-04-07 15:58:07 · 1450 阅读 · 0 评论