
iOS
文章平均质量分 77
小男孩的王者梦
即使不擅长,也要努力去做,因为不做的话,就什么都不会改变。
展开
-
Swift知识点 --- AnyView
在设计和编码过程中,应优先考虑直接使用具体视图类型、利用类型推断、复用视图实例、使用泛型以及优化视图结构,只有在必要时才适当引入。本质上是对具体视图类型的类型擦除,允许你将不同类型的视图封装在一个统一的类型中。是 SwiftUI 框架中的一种特殊类型,它是一个通用视图类型,可以容纳任何具体的 SwiftUI 视图。:当你需要在某个函数、计算属性或闭包中返回不同类型的视图时,直接返回这些视图会导致类型不匹配。泛型允许你在编译时就确定视图类型,从而避免运行时的类型擦除,提高性能。视图修饰符来监测界面渲染性能。原创 2024-04-17 14:30:00 · 631 阅读 · 0 评论 -
iOS 知识点---闭包
闭包是一种自包含的代码块,它可以捕获其所在上下文中的常量和变量,并且可以在代码中作为参数传递,也可以作为函数的返回值。:Swift 提供了一种简洁的闭包表达式语法,允许开发者以轻量级的方式编写闭包。以上示例展示了 Swift 中闭包的基本原理和不同使用形式,包括闭包表达式、多行闭包、显式类型化闭包等,并通过实际应用场景如数组排序、归约计算和函数参数等,说明了闭包在 Swift 编程中的重要作用。:Swift 中的闭包具有明确的类型,描述了闭包的参数类型、返回类型以及捕获的上下文。,返回两者中的较大值。原创 2024-04-17 09:18:09 · 622 阅读 · 0 评论 -
iOS知识点---Runloop
(Observers):允许在 Runloop 的特定阶段(如即将进入、正在运行、即将退出循环等)注册观察者回调,用于监控 Runloop 的状态变化、执行自定义操作或调整 Runloop 行为。:对于需要长期运行但并非持续工作的后台线程,通过启动 Runloop 并设置合适的事件源(如空的 Mach 端口),可以在无任务时使线程休眠,降低 CPU 占用率,有事件时迅速唤醒处理。:Runloop 本质上是一个无限循环,其内部不断检查是否有待处理的事件,并在有事件时执行相应的处理逻辑。(模态对话框模式)等。原创 2024-04-17 08:55:48 · 858 阅读 · 0 评论 -
iOS知识点 --- Runtime
来支持特定的动态行为和使用场景。:Swift 标准库包含了一些动态行为的支持,如反射(Mirror)、类型擦除(AnyObject 和 Any)、协议扩展等,这些功能在一定程度上类似于 Runtime 的部分功能,但通常更为安全且受编译器严格控制。:Runtime 提供了查询和操作类、对象、协议、选择器(方法名)等元数据的能力,如获取类的所有方法列表、属性列表、实例变量等,甚至可以动态地创建类、添加属性或方法等。:交换两个方法的实现,常用于在不修改原有代码的情况下,对系统的某些行为进行拦截、扩展或监控。原创 2024-04-17 08:49:53 · 530 阅读 · 0 评论 -
iOS知识点 ---UIView和CAlayer
在iOS应用开发中,UIView和CALayer是两个核心概念,它们在构建用户界面(UI)过程中起着至关重要的作用。尽管它们之间存在着紧密的关联,但各自承担着不同的职责和功能。以下是关于UIView和CALayer。原创 2024-04-16 18:00:00 · 888 阅读 · 0 评论 -
iOS知识点 --- UITableView优化
是一个非常常见的用于展示列表数据的组件,由于其在滚动时需要实时加载和更新大量单元格,因此对性能要求较高。的滚动流畅性和整体性能,为用户提供更好的交互体验。在实际开发中,应根据具体应用场景和性能分析结果选择最适合的优化手段。通过综合运用以上优化策略,可以显著提升。原创 2024-04-15 20:00:00 · 573 阅读 · 0 评论 -
iOS知识点 ---- 离屏渲染
iOS 中的离屏渲染(Off-Screen Rendering)是指在绘制某些复杂图形或特殊效果时,系统无法直接在当前屏幕缓冲区进行绘制,而是需要先在额外的离屏缓冲区(Off-Screen Buffer)中完成渲染工作,然后再将结果混合到屏幕缓冲区的过程。离屏渲染往往发生在需要进行特定图形操作(如裁剪、遮罩、多重混合模式等)或使用某些特定属性(如圆角、阴影、透明度等)的场景中。离屏渲染可能导致性能下降,因为它涉及到额外的图形资源分配、上下文切换、数据复制等开销,尤其是在频繁触发或硬件资源受限的情况下。原创 2024-04-15 15:32:05 · 1905 阅读 · 0 评论 -
UI-KVO设计模式Demo
在这个Demo里面写了四个类:一个控制器类、一个操控数据类(即整理数据)、一个下载数据类、一个model类在这里我用的数据路径是:http://open.qyer.com/qyer/recommands/index?app_installtime=1427248095&client_id=qyer_ios&client_secret=cd254439208ab658ddf9&cou原创 2015-08-18 19:57:04 · 506 阅读 · 0 评论 -
用UIPagecontrol和UIScroller制作简易的相册(MRC状态下)
#import "AppDelegate.h"#import "RootViewController.h"@interface AppDelegate ()@end@implementation AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWith原创 2015-08-05 21:19:58 · 406 阅读 · 0 评论 -
运用UI制作简单的 登陆系统
//// AppDelegate.h// UI-Homework-5//// Created by lanouhn on 15-7-31.// Copyright (c) 2015年 尹江涛. All rights reserved.//#import @interface AppDelegate原创 2015-08-03 15:50:51 · 514 阅读 · 0 评论 -
iOS“断点”(Break Point)你不知道多强大
iOS“断点”(Break Point)你不知道多强大!(转载自http://mp.weixin.qq.com/s?__biz=MzA4ODk0NjY4NA==&mid=230272985&idx=1&sn=045c98bfb2d8dd1ecf7a732189935081&scene=0#rd)编码不能没调试,调试不能没断点(Break Point)。XCode的断点功能也是越来越强大转载 2015-08-30 16:19:36 · 844 阅读 · 0 评论