首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Swift| 基础语法(五)

前言 总结下 swift下的基础语法,里面涉及:常量&变量、Swift的数据类型、逻辑分支、循环、字符串相关、数组和字典、方法的书写调用等内容,考虑阅读体验分多篇来展示,希望对大家学习swift...、UIButton、UIImageView的使用 UITableView的使用 UITableView的使用 单例 相册选择照片或者拍照 ---- 一、纯代码创建应用根试图 func application...} Swift,创建tableViewCell的方法可以分为两种创建tableView时候注册和需要使用时手动创建。先聊聊创建tableView的时候直接注册cell: myTb?....可以自定义cell处理点击状态下的显示 var label1 :UILabel? var label2 :UILabel?...因为Swift,所有对象的构造器默认都是public,所以需要重写你的init让其成为私有的。 这样就保证像如下的代码编译报错,不能通过。 六、相册选择照片或者拍照 ?

2K30

​使用Swift和Xcode开发iOS应用的详细教程

本篇博客,我们将一步步地介绍如何使用Swift和Xcode创建一个简单的iOS应用。我们将涵盖项目的创建、界面设计、Swift代码编写以及应用的运行。让我们开始这个令人兴奋的开发之旅!...步骤1:安装Xcode和配置环境开始之前,请确保你的Mac上已经安装了最新版本的Xcode。你可以Mac App Store中下载并安装Xcode。...拖拽各种界面元素(如按钮、标签等)视图控制器。例如,将一个按钮放置视图控制器上,并在属性检查器设置按钮的标题为“Click Me”。...import UIKitclass ViewController: UIViewController { @IBOutlet weak var myButton: UIButton!...}}在这个例子,我们假设已经Main.storyboard创建了一个按钮和一个标签,并将它们分别关联ViewController.swift文件的myButton和myLabel属性。

55610

36.Swift学习之Associated Object

介绍 Swift 可以利用 OC 的 runtime 和 KVC ,在运行时向一个对象添加值存储,这种方式称之为Associated Object。...使用 extension 扩展现有类的功能时,使用Associated Object的方式,可以将一个值 “关联” 已有的要扩展的类上。该知识点在 iOS 开发中使用往往能优雅地解决很多问题。...,并且通过 & 操作符取地址并作为 UnsafeRawPointer 类型被传入,这在 Swift 与 C 协作和指针操作时是一种很常见的用法。...((UIButton)->Void){ block(button) } } } UIButton 传参 项目开发,经常会有类似九宫格的菜单按钮,每个按钮的点击时的参数是不一样的...,此时可以有如下几种方案: 创建 9 个按钮,逐一设置 通过 for 创建 9 个 UIButton,为 UIButton设置不同的tag,然后点击事件里面用 switch case判断 自定义UIButton

2.1K20

Swift:静态工厂方法

无论是我们要根据APP的品牌设置样式的视图(View),还是要配置的视图控制器(View Controller),亦或是测试创建存根的值时,我们经常发现需要将设置代码放在某个地方。...尽管子类化是一项重要的语言功能,即使面向协议的编程时代,也很容易将自定义设置与自定义行为混淆。我们并没有在上面的UILabel真正添加任何新行为,我们只是设置一个实例。...虽然我们可能无法完全摆脱视图控制器(或与此相关的视图)的子类化,但是某些类型的视图控制器可以工厂方法受益。...) ]) return viewController } } 如您在上面看到的,我们甚至可以静态属性或函数设置内部“自动布局”约束...特别是如果与"Swift:将子视图控制器用作插件" 的便捷API的稍加修改版本结合使用,我们现在可以执行异步操作时轻松添加预先配置的加载视图控制器: class ProductListViewController

2.3K10

Runtime再理解

基于以上两点可知,类方法元类的methodList是以实例方法的姿态存在的!! 3,Runtime的应用 很多人觉得Runtime很高大上、很难学、很难理解、华而不实。...(5)防止NSDictionary传入nil的时候程序崩溃:当NSDictionary遇见nil 除了上面几种应用,我接下来再为大家介绍一种应用——万能跳转。...并不是说ViewController的self就是ViewController或者其实例, *该消息给谁发送,也就是说,该消息的接收者是谁,那么self就是谁 */ [self...程序我只实现了NormanRedVC这个类,代码如下: //NormanRedVC.m #import "NormanRedVC.h" @interface NormanRedVC () @property...并不是说ViewController的self就是ViewController或者其实例, *该消息给谁发送,也就是说,该消息的接收者是谁,那么self就是谁 */ [self

60420

iOS开发 使用Pods管理调试个人Framework写在前面准备工作编写Podfile测试后记

主工程 我们将Framework工程拷贝主工程文件目录 ? 工程目录 编写Podfile 注意!...build SDK 主工程 import TestMainSDK 加入测试代码 import UIKit import TestMainSDK class ViewController: UIViewController...test 大功告成~ 测试二 我们现在要做的是: 主程序调用SDK获得一个vc 并 present 该vc中有一个按钮,点击事件的具体实现由主程序实现dismiss SDK创建一个TestViewController...UIButton) } }, for: .touchUpInside) } } 接下来SDK入口加入获取vc的代码 open func getSDKviewController...let vc = TestViewController() vc.testBtnActionHandel = actionHandle vcHandle(vc) } 编译一下SDK 主程序调用

1.6K40

Swift-MVVM 简单演练(一)

, Swift 还可以用来切分代码块 可以把功能相近的函数,放在一个extension */ extension HQMainViewController { /// 设置所有子控制器...这样做的目的是外界传入HQBaseViewController中信息字典,可以通过setupVistorView方法传到HQVistorView,再重写HQVistorView的访客视图信息字典的...data as NSData).write(toFile: "/Users/wanghongqing/Desktop/main.json", atomically: true) 将main.json拖入文件...总结 使用代理传递消息是为了控制器和视图之间解耦,让视图能够被多个控制器复用,如TableView 但是,如果视图仅仅是为了封装代码,而控制器剥离出来的,并且能够确认该视图不会被其它控制器引用,...swift 3.0对闭包做了改变,默认请款下都是非逃逸闭包,不再需要@noescape修饰。

10.2K51

30DaysOfSwift - Day1 计时器

前几天逛Github,偶然看到一个Swift的项目 —— 30DaysOfSwift,作者一共用30个小项目,来熟悉Swift语言,而我正好也学习了一段时间的Swift语言,准备仿照这样的模式,来更加深入的了解...所以我写这个小Demo之前我的项目里集成了SnapKit,使用类似Objective-C中常用的masonry框架来完成自动布局。...这里我还发现一个Swift的小问题,使用cocoadPods集成第三方库,引用不到头文件的解决方法和Objective-C不一样。...这是第一个Swift小Demo,很简单,也很好的帮助熟悉UI. import UIKit import SnapKit let SCREEN_WIDTH = UIScreen.mainScreen()...SCREEN_WIDTH * 0.6 //开始按钮高度 var counter = 0.0 var timer = NSTimer() var isPlaying = false class ViewController

78240

Flutter混合开发:已有iOS项目中引入Flutter

前言 android项目中添加flutter模块比较简单,因为毕竟都是google的,但是ios添加flutter模块有些麻烦了,我们首先参考的是官方文档 https://flutter.cn/...这里要注意,创建ios项目的时候我的设置是: Interfase: StoryBoard LifeCycle: UIKit App Delegate Language:Swift 这是因为官方后续的示例代码...然后需要将framework内嵌(embed)项目,项目的General下的FrameWorks, Libraries, and Embedded Content下,将刚才加入的framework改成...然后新添加的左侧选择Any iOS Simulator SDK,双击右侧就会弹窗,弹窗添加一条arm64即可。 同样Release下也操作一下,最后完成效果如上图。...)搜索发现并没有这两个字段,说明C文件并没有定义这两个字段。

3.4K50

设计模式之创建型模式

示例语言选用静态语言 Swift(其实个人认为设计模式主要还是针对静态语言,很多模式动态语言中都用处不大)。...创建型模式简介 创建型模式将实例化对象的部分系统独立出来,它们将系统具体使用哪些类的信息封装起来,并隐藏了这些类是如何被创建和组合的,对外只提供一个通用接口。...像 Self、JavaScript 这样基于原型的语言可以说处处都用到了原型模式,而像SmallTalk、OC、Ruby 等动态语言中,类本身可以当作对象传递并用其创建实例对象,甚至 Swift 也可以直接用所谓的元类型...但在 Swift ,只要使用let声明一个常量,用它指向一个实例,它的 immutable 性质可以保证线程安全,然后把对应的构造器设为 private 就可以了,像这样: private let instance...,或者等你的项目规模大一定程度的时候脑中灵光一闪:“这里用XXX模式似乎不错~”的时候,你就知道模式有什么用了。当然,时代发展,很多现代语言或者标准库已经集成了一些模式,不需要自己费力去实现了。

63240

自学Swift之路(一)UI入手之基本控件

77BF0FB21C66.png 创建好工程后,我们会进入这个界面 C18EA84A-89AF-4920-8824-1CF1F2CA8B8C.png 好了开始编程:写一个创建子视图的方法,里面创建一些基本的UI控件,然后viewDidLoad...调用: override func viewDidLoad() { super.viewDidLoad() self.createSubViews()...// 2.UIButton let myBtn:UIButton = UIButton(type: UIButtonType.Custom) myBtn.frame...myImgView.frame = CGRectMake(200, 200, 100, 100) } 写到这里,我想有OC经验的开发者已经发现,两种语言控件的属性是一样的,只是语法有些不一样而已,多写几个就会发现Swift...本人也是正在学习,文章内容如有错误,还请指正,有需要优化的地方,也请帮忙指出,帮助大家共同进步

2.9K110

【从零开始用Swift开发一个iOS应用(仿微博)】开篇-1. demo上手体验

最近在学iOS开发,本系列会针对iOS从前后的开发进行全面讲解,小到开发工具使用,大应用市场上线。 ?...二、代码实现 2.1 程序入口说明 Application/AppDelegate.swift文件的@UIApplication注解,表示这个Class类是程序的入口 ?...2.3 功能实现 2.3.1 创建一个视图,添加一个黄色矩形 import UIKit class ViewController: UIViewController { override func...,不需要使用`:` OC: @selector 3.7 调试对比 Swift: print(xxx) 效率高,log不包含时间,用#function来打印当前执行的方法 OC: NSLog,用__FUNCTION...如下图所示,我注释添加了MARK、TODO、FIXME标签前缀,这些特殊标记的锚点菜单将会显示导航栏上,点击菜单即可跳转到对应注释的地方,非常方便。 ?

3.6K31

将模型添加到场景 - 您的环境显示3D内容

右侧,我们有ViewController.swift,在那里我们可以找到该出口的声明。单击并拖动左侧的圆圈,它应该是第15行,然后释放到ARSCNView上。现在,关闭助理编辑。...添加按钮 我们想在视图中添加一个按钮,用作在场景添加模型的触发器。对象库,将UIButton拖动到场景视图的顶部。“ 属性”检查器,删除“ 按钮”标题并将图像设置为“ 按钮/添加”。...约束到底部20但这次是安全区域,并取消选中Constrain边距。然后,将鼠标悬停在左侧的“ 对齐”图标上,并在“容器”中选中“水平”以屏幕水平居中。...“ 节点”检查器,将x Euler Angle重置为0。 让我们再试一次。现在,我们的设备看起来更像是房间里。 缩放模型 如果您选择了其他型号,您可能已经注意尺寸不合适。...ViewController.swift,将一个新的类变量声明为一个节点数组,我们将其初始化为空。

5.4K20

窥探Swift编程之别样的HelloWorld

从今天就开始陆陆续续的发布一些有关Swift语言的东西,虽然目前公司项目开发Objective-C还是iOS开发的主力军,但是不久的将来Swift将会成为iOS开发的新生宠儿。...所以在在Xcode6.0+版本的Playground上玩一玩Swift还是很有必要的。接下来发表的博客主要是总结一下自己翻译《Swift编程入门经典》(清华大学出版社出版)这本书所学到的东西。...有些事儿需要天赋,但有些事儿还是需要努力的,谁生下来就是技术大牛呢~大牛大部分不都是吃白菜长大的么?好了不扯淡了,“少壮不努力,长大学编程”,切入今天的正题,来窥探一下Swift语言。   ...1.当然了,有Storyboard干嘛不用呢对吧,ViewController上添加一个Label: HelloWorld 并设置样式,然后label上添加一个Button,并添加相应的约束,如下所示...这一步我们就为Button关联了点击事件了。  ?

1.8K80
领券