当前位置: 首页 > wzjs >正文

怎么进入网站后台图片广东品牌网站制作公司

怎么进入网站后台图片,广东品牌网站制作公司,2023最建议买三款手机,平面设计接单一个月多少钱随着 iOS 系统的不断演进,Widget(小组件)已经成为提升用户体验的重要组成部分。从 iOS 14 开始,Apple 引入了全新的 WidgetKit 框架,允许开发者使用 SwiftUI 创建高度可定制、灵活展示的 Widget,并可添加到…

随着 iOS 系统的不断演进,Widget(小组件)已经成为提升用户体验的重要组成部分。从 iOS 14 开始,Apple 引入了全新的 WidgetKit 框架,允许开发者使用 SwiftUI 创建高度可定制、灵活展示的 Widget,并可添加到主屏幕、锁屏界面甚至待机模式中。

本篇博客将从基础概念出发,带你了解 iOS Widget 的作用、类型、开发架构以及常见误区,为后续深入开发打下坚实基础。


Widget 是什么?

Widget 是 App 的一个延伸部分,运行在系统容器中的 UI 视图,用于在不打开主应用的前提下向用户展示关键信息。它强调 轻量、及时、可定制、非交互式 的特性。

它的主要特点包括:

  • 基于 SwiftUI 构建(不支持 UIKit)
  • 定期刷新数据,不支持实时长连接
  • 用户可添加多个尺寸、多个实例(如显示不同城市天气)
  • 与主 App 分离运行,仅在系统容器中展示

WidgetKit 简介

Apple 提供了一个专门用于创建 Widget 的框架:WidgetKitWidgetKit 提供了以下能力:

  • 定义数据源(Timeline)
  • 配置 Widget 展示内容
  • 与 Intent 配合实现动态参数配置
  • 通过 SwiftUI 构建视图结构

WidgetKit 的基础结构如下:

struct MyWidget: Widget {var body: some WidgetConfiguration {StaticConfiguration(kind: "MyWidget", provider: MyProvider()) { entry inMyWidgetView(entry: entry)}.supportedFamilies([.systemSmall, .systemMedium, .systemLarge]).configurationDisplayName("我的组件").description("显示一些有用的信息")}
}

你需要实现:

  • 一个 TimelineProvider 来提供数据快照
  • 一个 Entry 表示时间点的数据
  • 一个 View 构建视图
  • 一个 Widget 注册点

Widget 能做什么?

能力描述
展示信息展示天气、待办、日历、股票、计步等轻量信息
支持多尺寸用户可选小中大尺寸,StandBy Widget 等
点击跳转使用 .widgetURL() 支持跳转回主 App 或 Deep Link
用户配置支持通过 Intent 配置不同内容,如显示不同城市或分类
定期刷新可以设定刷新频率(最小15分钟),或由 App 主动请求刷新

Widget 做不了什么?

开发 Widget 时要注意其 运行环境是受限的沙盒容器,存在不少限制:

  • ❌ 不能执行网络请求(需在主 App 中处理)
  • ❌ 不支持交互控件(如 Button、TextField)
  • ❌ 无法响应手势(不能滑动或拖动)
  • ❌ 无法长时间运行后台任务
  • ❌ 不适合展示大量动态数据或长文本

Widget 展示位置有哪些?

iOS 系统支持在多个位置展示 Widget,按系统版本差异分为:

  • 主屏幕(Home Screen):iOS 14 起支持添加小组件到主屏幕
  • 锁屏(Lock Screen Widgets):iOS 16 起支持
  • 待机模式(StandBy Widgets):iOS 17 起支持横屏待机展示
  • 控制中心(Control Widgets) :iOS 18 起支持的控制展示 ✅

开发 Widget 需要准备什么?

开发 Widget 的前提:

  • 使用 Xcode 12+(推荐最新)
  • 开启 Widget Extension,与主 App 同属一个 App Group(用于共享数据)
  • 项目需支持 iOS 14+,推荐 iOS 16 或 17 起步
  • 熟悉 SwiftUI 开发语法与架构

常见误区

  1. Widget 是实时的?

    • ❌ 并非实时更新,只能定期刷新或 App 主动触发。
  2. 我能在 Widget 内请求 API?

    • ❌ 不行,Widget 运行时无法发起网络请求,必须预加载数据。
  3. 我能放按钮/滚动视图吗?

    • ❌ Widget 是非交互视图,无法接受用户输入或操作。

总结

Widget 是 iOS 提供给开发者向用户持续展示关键信息的高效方式,它强调轻量级、非交互、适配性强的视图呈现。尽管受限较多,但若能合理运用 App Group、SwiftUI 和 Timeline 机制,依旧可以实现极具吸引力和实用性的功能。

最后,希望能够帮助到有需要的朋友,如果觉得有帮助,还望点个赞,添加个关注,笔者也会不断地努力,写出更多更好用的文章。

http://www.dtcms.com/wzjs/601997.html

相关文章:

  • 做空压机网站织梦网站栏目增加
  • 建外贸营销型网站大连旧房翻新装修哪家公司好
  • 浙江省住房和城乡建设厅干部学校网站网站建设属于什么开票类目
  • 湖南天人安装建设有限公司网站个人域名怎么做社交网站
  • 凡科建站的网址网站建设推广文案
  • 网站分辨率做96是否会更好培训加盟网站建设
  • 超级大气的一款工作室网站制作网络科技公司站点源码直接可用佛山企业网站建设咨询
  • 如何拉下对手网站外贸视频网站
  • 服装网站搭建计划书wordpress文章编辑器
  • 富阳科技网站有哪些投资理财网站开发
  • 视频网站砸钱做生态wordpress怎安装
  • 一个好的营销型网站模板怎么注册
  • 广东建科建设监理有限公司网站六安网站建设网络服务
  • 类似闲鱼网站怎么做抓取网站访客数据原理
  • 德语网站域名企业对企业的网站
  • 新材料 东莞网站建设移动应用开发专升本
  • 网站设计需要哪些外包程序员的出路
  • 招远网站设计百度推广入口
  • 网站建设布为网wordpress主页底端添加图
  • 广州云建站模板做网站被坑
  • 网站毕设代做东莞人才市场现场招聘信息
  • 小型网站建设价格百度安全中心
  • iis5.1建网站最容易做的网站类型
  • 建设一个网站的目标与期望偏门网站建设
  • 网站设置子目录深圳做手机网站
  • 网站建设的一般步骤百度推广全国代理商排名
  • 最好的产品网站建设100种迷你小手工
  • 外贸网站建设与优化购物网站开发计划书
  • asp网站免费模板河南建筑公共信息
  • 网站怎么优化排名国际最好的摄影作品网站