TGViewer
Prefire iOS Prefire iOS @prefire_ios · 980 subscribers
Post #92 783
🍏 Виджеты в iOS умеют анимации. Но не должны.

Нашёл офигенное видео:
Apple’s Widget Backdoor

Что внутри:
👉 clockHandRotationEffect — приватное API из старых SDK. Позволяет анимировать стрелки в SwiftUI. Да, даже в виджете.

Image(systemName: "clock")
.clockHandRotationEffect(.hours, angle: .degrees(90))


В Xcode 14 это уже выпилили, но можно собрать в Xcode 13 и притянуть как статическую либу.

👉 BlinkingView — вот это настоящая черная магия.
Используется кастомный bitmap-шрифт, где каждый символ — это PNG-кадр.
Виджет показывает Text("A"), потом Text("B"), потом Text("C")…
Каждая буква = кадр анимации. Получается плавная картинка без приватного API, и всё официально.

👉 WidgetAnimation — репозиторий с примером анимированного виджета.
Создаёт 30-секундную зацикленную анимацию в iOS-виджете, используя только публичные API.
Пример работает на 8 FPS, но можно достичь до 30 FPS, используя ту же технику.


Если любишь ломать iOS аккуратно и красиво — must-watch.
App Review пока спит. Но ты не спи.

И вот исходники:
github.com/brycebostwick/WidgetAnimation
  • 😱 11
  • ❤ 4
  • 🤝 3
More from @prefire_ios
  1. Sep 16, 2026☺️ Prefire в требованиях к вакансиям Где-то месяц назад поставил ежедневную задачу на Chat…
  2. Sep 5, 2026🧭 Podlodka iOS Crew: разработка с AI С 14 по 18 сентября пройдет новый сезон Podlodka iOS…
  3. Aug 26, 2026Кажется, мой кот начал жить своей жизнью. Сначала друзья просто закинули Mewmori в несколь…
  4. Aug 18, 2026Нахождение текста котом Mewmori в уникальных приложениях Что бы кот видел, я снимаю скринш…
  5. Aug 17, 2026Начал готовить к релизу ScreenCat - 🐈 Mewmori - Переименовал проект в Mewmori (типо memor…
  6. Aug 5, 2026Сделал систему скинов для котиков 🐈 В ScreenCat уже много скинов, и я прям сильно устал р…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →