Swift/IOS编程

[置顶] Aiiphp框架测试版发布,欢迎测试!

[置顶] Linux常用运维命令和linux常用管理操作命令(整理)

[置顶] Linux/Window服务器安全配置等常用软件下载列表

swift 多线程GCD和延时调用

GCD 是一种非常方便的使用多线程的方式。通过使用 GCD,我们可以在确保尽量简单的语法的前提下进行灵活的多线程编程。在 “复杂必死” 的多线程编程中,保持简单就是避免错误的金科玉律。好消息是在 Swift 中是可以无缝使用 GCD 的 API 的,而且得益于闭包特性的加入,使用起来比之前在 Objective-C 中更加简单方便。在这里我不打算花费很多时间介绍 GCD 的语法和要素,如果这么做的话就可以专门为 GCD 写上一节了。在下面我给出了一个日常里最通常会使用到的例子 (说这个例子能覆盖到日常的 GCD 使用的 50% 以上也不为过),来展示一下 Swift 里的 GCD 调用会是什么样子:

// 创建目标队列
let workingQueue = dispatch_queue_create("my_queue", nil)

// 派发到刚创建的队列中,GCD 会负责进行线程调度
dispatch_async(workingQueue) {
    // 在 workingQueue 中异步进行
    print("努力工作")
    NSThread.sleepForTimeInterval(2)  // 模拟两秒的执行时间

    dispatch_async(dispatch_get_main_queue()) {
        // 返回到主线程更新 UI
        print("结束工作,更新 UI")
    }
}

» 阅读全文

iOS开发过程中跳到开启wifi等系统设置界面

有时候,我们需要根据一些特定情况,如无网、或者看视频没有开启wift,跳转到wift设置开启页面,但是除了跳到WiFi设置界面,能不能跳到其他的设置界面呢?比如:定位服务、FaceTime、音乐等等。都是可以的,一起来看看如何实现的!

Wift界面

info里面设置

在项目中的info.plist中添加 URL types 并设置一项URL Schemes为prefs,如下图:

wifi1.png - 大小: 23.86 KB - 尺寸: 499 x 111 - 点击打开新窗口浏览全图

» 阅读全文

关键词: ios开发

IOS8获取位置坐标出错(Error Domain=kCLErrorDomain Code=0)的解决方法

IOS8获取位置坐标出错(Error Domain=kCLErrorDomain Code=0)的解决方法

出现这个主要是在模拟器中。解决方法如下:

出错原因是xcode里面的project-->scheme-->edit scheme-->options-->core location-->allow location simulation配置错误;如下图:

1.png - 大小: 124.55 KB - 尺寸: 1394 x 592 - 点击打开新窗口浏览全图

3. 将simulator-->reset content and settings:


1. 若已经设置了,记得取消勾选,保存;

2. 再重新勾选allow location simulation,

如果还是不行:

后再进行以上步骤。

这样应该就可以解决该问题了。



开发了一款IOS女性阅读类的APP,基于swift语言

作为灵魂有香气的女子微信号的微信粉丝,一个粉丝之作,现在最新版本为3.0版本。由于实在太忙,这个App,断断续续开发了1个多月了,前后台自己独立完成,

由于接触swift没多久,还属于新手行列,不熟悉,希望大家下载给出意见,

根据意见,完善后将于近期将考虑开放swift版本的源代码。


 

下载方式:

 

1、这个App  :https://itunes.apple.com/cn/app/ling-hun-you-xiang-qi-de-nu-zi/id1048511991?mt=8

 

2、app store 搜索:灵魂有香气的女子   然后下载试用。

» 阅读全文

关键词: swift , app

iOS/Swift跳转界面时隐藏tabBar的方法

我们有时候在开发iOS的时候,涉及到跳转界面时,需要隐藏tabbar,以便我们重新定义新的。

OC版本的:

//1.设置self.tabBarController.tabBar.hidden=YES;
     
self.tabBarController.tabBar.hidden=YES;
 
//2.如果在push跳转时需要隐藏tabBar,设置self.hidesBottomBarWhenPushed=YES;
 
    self.hidesBottomBarWhenPushed=YES;
    NextViewController *next=[[NextViewController alloc]init];
    [self.navigationController pushViewController:next animated:YES];
    self.hidesBottomBarWhenPushed=NO;
 
//注意:在push后设置self.hidesBottomBarWhenPushed=NO;
//这样back回来的时候,tabBar会恢复正常显示,不然就。。。哈哈。
Swift:

let detailCtrl = ScanViewController(nibName: "ScanViewController", bundle: nil);
        //detailCtrl.hidesBottomBarWhenPushed = true
        self.hidesBottomBarWhenPushed = true
        self.navigationController?.pushViewController(detailCtrl, animated: true)
        self.hidesBottomBarWhenPushed = false

关键词: tabbar , 跳转界面

swift lazy懒加载问题

     在了解swift懒加载的问题前,先来说一下懒加载的好处:
  • 需要的时候初始化内存,对内存开销较小,节省内部资源
  • 代码初始化放在一起,代码块比较好划分,方便别人和自己阅读

      我们来看看Swift中懒加载的本质,引用某人的原话:
它本质在siwft中确实是一个闭包,执行顺序是这样的,如果这个lazy修饰的变量没值,就会执行闭包中的东西,不是每次都执行。这个也符合懒加载的定义:懒。
  • 格式:
   lazy var 变量: 类型 = { 创建变量代码 }()

» 阅读全文

关键词: 懒加载

swift获取缓存大小以及删除缓存代码

swift获取缓存大小以及删除缓存,

功能是基于 Xcode 7.2  swift 2.0


func getCacheSize()->Int{
        // 取出cache文件夹路径
        let cachePath = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.CachesDirectory, NSSearchPathDomainMask.UserDomainMask, true).first
        // 打印路径,需要测试的可以往这个路径下放东西

» 阅读全文

关键词: 缓存 , swift

swift开发之文字内容转语音

swift开发之文字内容转语音,只是将网上oc版本转化为swift版本而已

xcode7

swift2.0

import UIKit
import AVFoundation

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

» 阅读全文

Total: 261234Next ›