• 前言

    使用过 Core Data 的开发者,一定会在编辑 Data Model 时看到过右侧的属性面板中的 Derived 和 Transient 两个属性。关于这两个属性的文档不多,大多的开发者并不清楚该如何使用或在何时使用该属性。文本将结合我的使用体验,对 Derived 和 Transient 两个属性的功能、用法、注意事项等内容作以介绍。

    Derived

    什么是 Derived 属性

    从 iOS 13 开始,苹果在 Core Data 中添加了 Derived(派生属性),它的名称已经表明了该属性的含义—— 该属性的值从一个或多个其他的属性的值派生而来。

    通俗地说,就是在创建或修改托管对象实例时...

  • 本文将探讨涉及 SwiftUI TextField 的事件、焦点切换、键盘设置等相关的经验、技巧和注意事项。

    事件

    onEditingChanged

    当 TextField 获得焦点时(进入可编辑状态),onEditingChanged将调用给定的方法并传递true值;当 TextField 失去焦点时,再次调用方法并传递false

    struct OnEditingChangedDemo:View{
        @State var name = ""
        var body: some View{
            List{
                TextField("name:",text:$n...
  • 2019年中,我有了开发用于记录自己健康数据app的想法,并在同年10月完成了【健康笔记】第一个很简陋的版本。到今天,我已经使用健康笔记两年了。

    从记录的数据来看,手术后这几年身体的各项指标还算保持的不错,尽管并没有达到非常理想的状态,但同我个人之前的指标比较,已经改善太多,希望能够长期保持下去。

    身体指标数据在积累到一定的量后可以反映出很多的问题和细节,不少情况下身体的主观感受同检查的结构是有不小偏差的。

    image-20211018074519792

    很多时候尽管自我感觉相当不错,指标提醒我需要休息并作适度调整。结合主观和客观的信息综合判断,有利于更好的了解自己的身体状态。

    另外,通过分析不同指标之间的趋势差异,也给了医生和我调整药物、调整运动...

  • SwiftUI 的 TextField 可能是开发者在应用程序中最常使用的文本录入组件了。作为 UITextField(NSTextField)的 SwiftUI 封装,苹果为开发者提供了众多的构造方法和修饰符以提高其使用的便利性、定制性。但 SwiftUI 在封装中也屏蔽了不少的高级接口和功能,增加了开发者实现某些特定需要的复杂性。本文为【SwiftUI 进阶】系列文章中的一篇,在本文中,我将介绍如何在 TextField 中实现如下功能:

    • 屏蔽无效字符
    • 判断录入的内容是否满足特定条件
    • 对录入的文本实时格式化显示
    textfieldDemo1

    本文的目的并非提供一个通用的解决方案,而是通过探讨几种思路,让读者可以在面对类似需求时...

  • 在 WWDC 2021 上,苹果为开发者带来了有一个期待已久的功能——AttributedString,这意味着 Swift 开发人员不再需要使用基于 Objective-C 的 NSAttributedString 来创建样式化文本。本文将对其做全面的介绍并演示如何创建自定义属性。

    初步印象

    AttributedString 是具有单个字符或字符范围的属性的字符串。属性提供了一些特征,如用于显示的视觉风格、用于无障碍引导以及用于在数据源之间进行链接的超链接数据等。

    下面的代码将生成一个包含粗体以及超链接的属性字符串。

    var attributedString = AttributedString("...