上篇我们已经了解了MVVM的框架结构和运行原理。这里我们来看一下伟大的双向数据绑定。 说到双向绑定,大家比较熟悉的应该就是AngularJS了,几乎所有的AngularJS 系列教程的开篇几章都要涉及到,真的是很好用。 表达的效果很简单:就是在界面的操作对数据模型的修改能实时反映到数据;而数据的变更能实时展现到界面。即视图数据模型(ViewModel)和视图(View)之间的双向绑定和触发。 我们
转载 2023-08-11 20:48:03
163阅读
Swift2.0中引入了协议扩展的特性,并且建议开发者一切从协议(Protocol)出发,经过几个月的学习探索,博主发现Swift作为一门面向协议编程(POP)的语言非常适合时下火热的MVVM架构。MVVM已经提出有一段时间了,如果你还不懂什么是MVVM,建议先去补充相关的知识,再回到本文中。 在Cocoa Touch体系内,MVC是广为人知的经典架构,博主之前也讲解过MVC的相关知识,但是随着
前言:读者如果是以应对学校学习可移步至 iOS Swift版 UICollectionView的使用,这篇文章是基于StoryBoard实现的,难度很小;如果想要了解UICollectionView内的控件布局展示内容,请移步至UICollectionView cell子项布局的分析。下面的UICollectionView的实现是基于纯代码方式,内容对于初学者而言可能有些许繁琐,但总体来说还是比较
转载 2023-10-27 06:11:10
81阅读
# Swift MVC 转 MVVM 的全流程指导 在开发 iOS 应用时,MVC(Model-View-Controller)是一种常见的设计模式。然而,随着应用的复杂性增加,MVVM(Model-View-ViewModel)逐渐受到青睐,因为它能提供更好的可维护性和可扩展性。本文将指导你如何将 Swift 中的 MVC 结构转换为 MVVM 结构,并展示具体的实现步骤和必要的代码。 ##
原创 8月前
23阅读
# Swift中的MVC架构 在现代软件开发中,设计模式起着至关重要的作用。MVC(Model-View-Controller)是一种常见的设计模式,广泛用于许多编程语言和框架中,特别是在iOS应用开发中。MVC帮助开发者组织代码,提高可读性和可维护性。本文将详细介绍SwiftMVC的基本概念,并通过示例代码来说明如何在实际应用中使用该模式。 ## MVC的基本概念 MVC由三个核心组件组
原创 8月前
13阅读
本篇将通过3种方式,把枚举项上的自定义属性填充到下拉框: 1、通过控制器返回List<SelectListItem>类型给前台视图 2、通过为枚举类型属性打上UIHint属性让模版显示枚举项 3、通过自定义元数据提供器DataAnnotationsModelMetadataProvider让模版显示枚举项 我们经常会把类型为Int16的属性通过枚举来获得。比
转载 1月前
366阅读
Swift-MVVM 简单演练(二)Swift-MVVM 简单演练(三)Swift-MVVM 简单演练(四)前言最近在学习swift和MVVM架构模式,目的只是将自己的学习笔记记录下来,方便自己日后查找,仅此而已!!!这篇文章都写啥自定义NavgationBar 抽取便利构造函数初步的下拉刷新/上拉加载的简单处理未登录逻辑的处理苹果原生布局NSLayoutConstraint 如何用VFL布局(V
转载 2023-12-11 19:03:29
96阅读
Swift中有一个Alamofire第三方是进行网络请求的,它是AFNetworking的作者用的AFNe
原创 2022-11-28 17:00:21
536阅读
=============序列化=解析数据====================================1.**********************IOS系统的序列化器,吧JSON字符串解析成JSON对象(字典)//1.这是一个JSON字符串 let jsonStr ="[{\"name\": \"hangge\", \"age\": 100, \"phones\":
转载 2024-05-10 15:29:13
129阅读
swift 抛出错误 Swift error handling is a very important aspect of writing better code. Swift try statement is used for error handling in swift programs. Let’s get started by launching XCode playgrou
转载 2023-12-21 17:29:15
44阅读
MARK、TODO、FIXME // MARK: 类似于OC中的 #pragma mark// MARK: - 类似于OC中的 #pragma mark - //TODO: 用于标记未完成的任务// FIXME: 用于标记待修复的问题#warning: 用于标记未完成的任务或需要提醒的任务  左边在代码中写的
SpriteKit将具有流畅动画的高性能2D内容添加到您的应用中,或使用一组基于2D游戏的高级工具来创建游戏。SpriteKit是一个功能强大的基于2D精灵的框架,适用于Apple的游戏开发。SpriteKit使用SKView这是一个场景,它是你在屏幕上看到的视觉效果。对于熟悉制作iOS App的人来说,它类似于Storyboard。更少的代码,更多的图像!为什么要使用SpriteKit?Spri
转载 2023-11-25 12:11:37
61阅读
# Swift 网络诊断:基础与应用 在现代应用程序开发中,网络功能变得越来越重要。为了提升用户体验,开发者需要确保网络请求的稳定性与高效性。在Swift中,我们可以利用一些API和工具来诊断网络状态。本文将介绍如何在Swift中实现网络诊断,包括代码示例,以及类图和序列图的可视化展示。 ## 一、网络诊断的基本概念 网络诊断是指通过检测网络连接状态、延迟、带宽等指标,判断网络是否正常工作的
原创 8月前
37阅读
关于“swift 网络权限”的问题,开发者在使用 Swift 进行网络操作时常会遇到网络权限相关的配置问题,从 iOS 10 开始,Apple 引入了对 App Transport Security(ATS)的强制要求,提升了网络请求的安全性。然而,在这些新的政策下,开发者必须小心配置网络权限。 ## 版本对比 在 Swift 的不同版本中,网络权限的管理现状发生了显著的变化。以下是 Swif
原创 7月前
43阅读
在现代应用程序开发中,Swift 网络授权是一个不可忽视的重要环节。通过有效的网络授权机制,我们能够确保应用程序的安全性和数据完整性。接下来我们将探讨如何通过备份策略、恢复流程、灾难场景、工具链集成、日志分析和预防措施来解决 Swift 网络授权中可能遇到的问题。 ### 备份策略 首先,针对 Swift 网络授权,我们制定了一个全面的备份策略。以下是这个策略的思维导图,它为我们提供了清晰的结
原创 7月前
26阅读
在 iOS 开发中,网络权限的管理是确保应用正常运作的重要部分,尤其是涉及到数据请求时。本文将通过一系列清晰的步骤,帮助大家解决“Swift 网络权限”的问题,确保应用能够顺利地进行网络请求,以便提高用户体验。 ### 环境准备 在开始之前,确保你的开发环境符合以下要求: 1. **Xcode版本**:至少4.2及以上 2. **Swift版本**:推荐使用Swift 5.0及以上 3. *
原创 7月前
103阅读
目录 限定作用域访问级别:移除 ++ 和 --将inout 声明调整为类型修饰inout 限制为只能获取 @noescape 的上下文将 @noescape 和 @autoclosure 转化成类型特质将用于关联类型声明的 typealias 替换成 associatedtype 限定作用域访问级别:在swift 3.0 之前,swift 提供3种不同的访问级别: 1.public(公开)
转载 2024-10-01 13:05:14
48阅读
本期内容不多,包含了小众DI库`牙签`帮助测试的文章,Kotlin中Delegate的强大之介绍,以及基于Google Actions与Dialog Flow的AI应用,Android 8.1 API的改动与增强. 第三方库有一个kotlin写的时间计算库比较有趣,代码部分Kolin的Delegate可以看两眼,没准可以简化你的项目哦. October 29th, 2017 Android We
转载 1月前
333阅读
Swift-Realm数据库的使用详解 概述Realm 是一个跨平台的移动数据库引擎,其性能要优于 Core Data 和 FMDB - 移动端数据库性能比较, 我们可以在 Android 端 realm-java,iOS端:Realm-Cocoa,同时支持 OC 和 Swift两种语言开发。其使用简单,免费,性能优异,跨平台的特点广受程序员GG喜爱。Realm 中文文档本文将结合一些实战演练讲
Alamofire是一个使用Swift编写的开源网络库,主要用于iOS、macOS和watchOS应用程序中进行HTTP请求和响应处理。它基于NSURLSession构建,提供了强大的、易于使用的API,并支持多种编码方式和网络安全性。Alamofire的架构可以分为以下几个部分:SessionManager:这是Alamofire的核心部分,负责处理NSURLSession和请求管理。Sessi
转载 2023-10-21 17:59:04
139阅读
  • 1
  • 2
  • 3
  • 4
  • 5