10/12 study
[患者版]加号选择页:
这是四个TableView放在Scrollview上
上面是个xib封装的view

整体就是个scrollView,用xib摆上去的控件:

上面加了黄条,旧的控件统一修改y坐标:


这个浮层是一个控制器:
HDFSeeDoctorPopupViewController.h
点击立即就诊push下个页面,将这个浮层隐藏,但是并不remove, 从下一个页面返回的时候,判断如果这个view是隐藏的,那么将它显示出来
在viewWillApperar方法中:


使用了运行时的关联对象,此处是getAssociatedObject
点击立即就诊的时候,只是将view隐藏了:


点击X的时候删掉view, 调用remove不调用hide了
dissmiss给释放了设置为nil
setAssociatedObject

取消所有请求: cancelOperationsWithURL

关于运行时的关联对象,查询苹果文档,一共就三个方法:
func objc_setAssociatedObject(Any!, UnsafeRawPointer!, Any!, objc_AssociationPolicy)
Sets an associated value for a given object using a given key and association policy.
func objc_getAssociatedObject(Any!, UnsafeRawPointer!)
Returns the value associated with a given object for a given key.
func objc_removeAssociatedObjects(Any!)
Removes all associations for a given object.
我们的这个页面是如何运用的呢?
在哪里set关联对象?

在哪里get关联对象?

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?