Как создать гистограмму с помощью Swift Charts
На WWDC 22 Apple представила Swift Charts, фреймворк, позволяющий визуализировать данные в виде гистограмм. До его появления нам приходилось подключать всевозможные сторонние решения для построения графиков в SwiftUI. Визуализация данных с помощью аналогичного декларативного синтаксиса в SwiftUI — это просто фантастика.
Гистограмма — это всего лишь один из доступных вариантов визуализации данных. В целом, многие из методов, о которых вы сегодня узнаете, применимы и к другим графикам. Фактически, вы можете заменить всего один элемент, чтобы перейти от гистограммы к линейной диаграмме. Давайте погрузимся в работу!
https://www.avanderlee.com/swift-charts/bar-chart-creation-using-swift-charts/
#ios
На WWDC 22 Apple представила Swift Charts, фреймворк, позволяющий визуализировать данные в виде гистограмм. До его появления нам приходилось подключать всевозможные сторонние решения для построения графиков в SwiftUI. Визуализация данных с помощью аналогичного декларативного синтаксиса в SwiftUI — это просто фантастика.
Гистограмма — это всего лишь один из доступных вариантов визуализации данных. В целом, многие из методов, о которых вы сегодня узнаете, применимы и к другим графикам. Фактически, вы можете заменить всего один элемент, чтобы перейти от гистограммы к линейной диаграмме. Давайте погрузимся в работу!
https://www.avanderlee.com/swift-charts/bar-chart-creation-using-swift-charts/
#ios
👍1
Forwarded from Machinelearning
PocketPal AI - проект Ai-ассистента на базе SLM, которые запускаются локально на iOS и Android без необходимости подключения к Интернету:
Приложения на обеих платформах позволяет выбирать модели, настраивать параметры инференса (системный промпт, температура, шаблоны чата и BOS), следить за показателями производительности в реальном времени и имеют функцию автоматической выгрузки моделей из памяти устройства, когда приложение в фоновом режиме.
Список моделей в приложении (загружаются вручную из меню):
Помимо этих моделей, можно загрузить любую модель в формате GGUF через опцию "Add Local Model" в меню моделей приложения на устройстве.
В планах проекта расширение списка поддерживаемых моделей, улучшение функций пользовательского интерфейса и поддержка большего количества версий Android/
⚠️ Требования для локальная разработки проекта PocketPal:
# Clone repository
git clone https://github.com/a-ghorbani/pocketpal-ai
cd pocketpal-ai
# Install dependencies
yarn install
# Install dependencies iOS only
cd ios
pod install
cd ..
# Run App via iOS Simulator
yarn ios
# Run App via Android Simulator
yarn android
@ai_machinelearning_big_data
#AI #ML #SLM #iOS #Android
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3❤2👍1👎1
🍏 fileprivate vs private
🔹 Свойство fileprivate может быть прочитано в любом месте того же файла Swift, но не за его пределами.
🔹 Свойство private можно прочитать только внутри типа, в котором оно было объявлено (а также в расширениях этого типа в том же файле).
Подробнее о private и fileprivate здесь.
#Swift #iOS
🔹 Свойство fileprivate может быть прочитано в любом месте того же файла Swift, но не за его пределами.
🔹 Свойство private можно прочитать только внутри типа, в котором оно было объявлено (а также в расширениях этого типа в том же файле).
Подробнее о private и fileprivate здесь.
#Swift #iOS
Sarunw
Swift fileprivate vs private | Sarunw
Learn the difference between two similar access levels in Swift, private and fileprivate.
👍1
🌟 GitHubVerge — мощная библиотека для управления состоянием
Verge представляет собой высокоэффективную и масштабируемую библиотеку для управления состоянием приложений на Swift. Разработана с акцентом на реальные сценарии использования, она обеспечивает удобный и интуитивный подход к управлению состоянием приложения, избегая сложностей, связанных с действиями и редукторами. Verge совместим как с UIKit, так и со SwiftUI.
📌 Github
#ios #mobile
Verge представляет собой высокоэффективную и масштабируемую библиотеку для управления состоянием приложений на Swift. Разработана с акцентом на реальные сценарии использования, она обеспечивает удобный и интуитивный подход к управлению состоянием приложения, избегая сложностей, связанных с действиями и редукторами. Verge совместим как с UIKit, так и со SwiftUI.
📌 Github
#ios #mobile
👍3🔥3❤1🥰1
This media is not supported in your browser
VIEW IN TELEGRAM
Работаем с сетчатыми градиентами в iOS 18
В iOS 18 появилась возможность создавать сетчатые градиенты. Сетчатые градиенты — это действительно хороший способ создания очень крутых эффектов в пользовательском интерфейсе. В этой статье мы рассмотрим, что такое сетчатые градиенты, как их можно использовать и как их можно анимировать, чтобы они выглядели действительно круто.
Для начала мы рассмотрим, как можно создать сетчатый градиент. Мы рассмотрим, как это работает, а затем посмотрим, что можно анимировать и как можно играть с градиентами. В конце статьи я немного расскажу о том, где, на мой взгляд, имеет смысл использовать сетчатые градиенты, а где может быть не стоит.
https://www.donnywals.com/getting-started-with-mesh-gradients-on-ios-18/
#ios@developer_mobila
В iOS 18 появилась возможность создавать сетчатые градиенты. Сетчатые градиенты — это действительно хороший способ создания очень крутых эффектов в пользовательском интерфейсе. В этой статье мы рассмотрим, что такое сетчатые градиенты, как их можно использовать и как их можно анимировать, чтобы они выглядели действительно круто.
Для начала мы рассмотрим, как можно создать сетчатый градиент. Мы рассмотрим, как это работает, а затем посмотрим, что можно анимировать и как можно играть с градиентами. В конце статьи я немного расскажу о том, где, на мой взгляд, имеет смысл использовать сетчатые градиенты, а где может быть не стоит.
https://www.donnywals.com/getting-started-with-mesh-gradients-on-ios-18/
#ios@developer_mobila
❤1
Media is too big
VIEW IN TELEGRAM
Как создать пользовательский экран в SwiftUI
Имейте в виду, что это действительно работает в iOS 15! И хотя многие в комментариях хотят указать на более нативное решение, оно было представлено в iOS 16. Итак, это решение, которое также включает в себя довольно много настроек радиуса углов, цветов и многого другого, потому что вы также можете форкнуть это репо и редактировать его по своему усмотрению :]
https://github.com/fieldday-ai/Modals
#ios
Имейте в виду, что это действительно работает в iOS 15! И хотя многие в комментариях хотят указать на более нативное решение, оно было представлено в iOS 16. Итак, это решение, которое также включает в себя довольно много настроек радиуса углов, цветов и многого другого, потому что вы также можете форкнуть это репо и редактировать его по своему усмотрению :]
https://github.com/fieldday-ai/Modals
#ios
👍2❤1
Ctrl + A – в начало строки
Ctrl + E – в конец строки
Ctrl + T – поменять местами символы, прилегающие к курсору
Ctrl + K – удалить строку
Ctrl + L – курсор в центр строки
Esc – спрятать (показать) меню предложений
Tab – применить предложение
Cmd + Y – активировать (деактивировать) точки остановки
Cmd + Control + Y – продолжить компиляцию (в дебаггере)
F6 – степ-овер
Cmd + Opt + ↑ - переключение между заголовочным файлом и файлом исходного текста
Cmd + двойной щелчок - переключение к определению идентификатора
Opt + двойной щелчок - найти документацию для идентификатора
Tab + → или Ctrl + / - выбрать следующий аргумент в автозаполнении
Shift + Tab + → или Shift + Ctrl + / - выбрать предыдущий аргумент в автозаполнении
Ctrl + Shift + . - в обратном направлении между вариантами автозаполнения
Opt + Cmd + двойной щелчок на идентификаторе - найти в документации
Cmd + двойной щелчок на объекте в Document Window - переключиться к классу в XCode из IB
Ctrl + Shift + щелчок на объекте - выбрать наложенные друг на друга элементы в Interface Builder
Cmd + ] или Cmd + [ - табулировать блок кода вправо или влево
Cmd + / - закомментировать блок кода
Cmd + Shift + E - скрыть список файлов над редактором кода
Cmd + Opt + Shift + E - скрыть список файлов над редактором кода и «Groups and Files»
Alt + Shift + Cmd + K - очистить папки билда (build)
Cmd + стрелки влево/вправо - поворот симулятора
Cmd + R - запустить программу на выполнение
Cmd + . - остановить проект
Cmd + B - собрать проект, без запуска
Cmd + Shift + B - сборка проекта со сбросом кэша IDE
Cmd + L - переход к строке с номером
Cmd + N - создать файл
Cmd + Shift + F - поиск по всему проекту
Cmd + Ctrl + F - развернуть среду во весь экран
Cmd + Shift + O - перемещение по файлам, методам, классам
Cmd + T - создать новую вкладку
Cmd + Opt + T - показать или скрыть Toolbar
Cmd + Shift + N - создать новый проект
Cmd + Opt + → свернуть или развернуть код
Cmd + S - сохранить проект
Cmd + Shift + L - показать библиотеку компонентов
Cmd + Shift + Return - запустить Playground(выполнить код)
Cmd + 0 - показать или скрыть область навигатора(левое окно)
Cmd + Opt + 0 - показать или скрыть область инспектора (правое окно)
Cmd + Shift + Y - показать или скрыть область отладки (нижнее окно)
#ios
Please open Telegram to view this post
VIEW IN TELEGRAM
В iOS разработчики могут использовать фреймворк LocalAuthentication для интеграции биометрической аутентификации, такой как Face ID или Touch ID, в свои приложения. Это позволяет повысить безопасность и удобство использования, предоставляя пользователям быстрый и надежный способ входа.
Для реализации биометрической аутентификации необходимо импортировать фреймворк LocalAuthentication и создать экземпляр класса LAContext. Затем можно вызвать метод evaluatePolicy(_:localizedReason:reply:), который отображает системный интерфейс для аутентификации пользователя. Важно обрабатывать возможные ошибки, такие как отсутствие настроенной биометрии на устройстве или отказ пользователя от аутентификации.
Рекомендуется предоставлять пользователям альтернативные методы входа в случае недоступности биометрической аутентификации, например, с использованием пароля или PIN-кода. Это обеспечит доступность приложения для всех пользователей, независимо от настроек их устройств.
https://tanaschita.com/ios-local-authentication/
#ios
Для реализации биометрической аутентификации необходимо импортировать фреймворк LocalAuthentication и создать экземпляр класса LAContext. Затем можно вызвать метод evaluatePolicy(_:localizedReason:reply:), который отображает системный интерфейс для аутентификации пользователя. Важно обрабатывать возможные ошибки, такие как отсутствие настроенной биометрии на устройстве или отказ пользователя от аутентификации.
Рекомендуется предоставлять пользователям альтернативные методы входа в случае недоступности биометрической аутентификации, например, с использованием пароля или PIN-кода. Это обеспечит доступность приложения для всех пользователей, независимо от настроек их устройств.
https://tanaschita.com/ios-local-authentication/
#ios
Tanaschita
Implementing Face ID authentication in SwiftUI
Learn how to add biometric authentication with passcode fallback to secure your app for iOS using Swift and SwiftUI with Apple's Local Authentication framework.
This media is not supported in your browser
VIEW IN TELEGRAM
Mantis — кроп для изображений в стиле Фото
Mantis — это библиотека для обрезки (кропа) изображений для iOS, написанная на Swift и обеспечивающая богатые возможности обрезки для вашего приложения для iOS/Mac. Поддерживает разные формы (в том числе кастомные), кнопку отмены.
https://github.com/guoyingtao/Mantis
#ios
Mantis — это библиотека для обрезки (кропа) изображений для iOS, написанная на Swift и обеспечивающая богатые возможности обрезки для вашего приложения для iOS/Mac. Поддерживает разные формы (в том числе кастомные), кнопку отмены.
https://github.com/guoyingtao/Mantis
#ios
Media is too big
VIEW IN TELEGRAM
Переход с UIKit на SwiftUI — разработка трекера тренировок с нуля
00:00 - Intro
01:36 - Настройка проекта
02:57 - Создание модели User
04:06 - Отличие UIKit от SwiftUI
05:25 - Создание UserInfoView
06:48 - Создание ZStack
07:50 - Создание HStack
10:19 - Использование padding для Image
11:15 - Использование offset для Image
12:30 - Использование padding для Rectangle
14:09 - Использование alignmentGuide
16:35 - Размещение Text
20:36 - Создание ViewMetrics
25:18 - Лайк и Подписка
источник
#ios
00:00 - Intro
01:36 - Настройка проекта
02:57 - Создание модели User
04:06 - Отличие UIKit от SwiftUI
05:25 - Создание UserInfoView
06:48 - Создание ZStack
07:50 - Создание HStack
10:19 - Использование padding для Image
11:15 - Использование offset для Image
12:30 - Использование padding для Rectangle
14:09 - Использование alignmentGuide
16:35 - Размещение Text
20:36 - Создание ViewMetrics
25:18 - Лайк и Подписка
источник
#ios
💩5👍1