Три д тач что это
Что такое 3D Touch?
время чтения: 4 минуты
3D Touch — это технология, которая позволяет устройству Apple различать силу нажатия пользователя на дисплей смартфона. Функция 3d touch основана на ранее запатентованной технологии Force Touch, которая используется в «умных» часах Apple и некоторых моделях MacBook. Способность дисплея «чувствовать» силу нажатия позволяет iOS расширить спектр возможных действий в зависимости от давления пальца. Становится доступной дополнительная функциональность и возрастает удобство работы со смартфоном.
Виды нажатий
Для обозначения физических действий при использовании технологии Apple ввела новые наименования в дополнение к кратковременному нажатию и свайпу — «peek» и «pop». Эти действия позволяют просматривать и управлять контентом без полноценного запуска соответствующего приложения. Несильное нажатие (peek) используется для предпросмотра информации, например, пришедшего письма или сообщения в мессенджере. Если пользователь не собирается дальше работать с контентом, то отпускает палец, в противном случае давит сильнее (pop), и сообщение открывается в соответствующем приложении.
Возможности
Теперь подробнее о 3d touch — что это на айфоне, какой модели появилась эта функция, другие частые вопросы. Новая технология, после апробации в AppleWatch и трекпадах MacBook была адаптирована и для смартфонов компании. Первыми моделями с новой функциональностью стали iPhone 6 и iPhone 6s. При включенном 3d touch более сильное нажатие на иконку не запускает программу. Открываются ее дополнительные свойства или список наиболее востребованных функций для быстрого доступа к ним. Кроме этого, такое нажатие для отдельных приложений запускает мини-виджет программы. О том, что нажатие распознано, смартфон сигнализирует легкой вибрацией моторчика Taptic Engine.
Примеры использования
Нативные приложения Apple, а также ряд популярных сторонних программ получили дополнительные функции при сильном нажатии на иконку приложения на рабочем столе. Пользователь получил легкий доступ к функциональности без запуска и открытия приложения. В контекстном меню отображаются самые частые функции конкретной программы, а само приложение при этом не стартует. Кроме этого, ряд разработчиков добавили поддержку 3d touch и внутрь самих приложений для новых действий или облегчения выполнения старых.
Быстрый доступ
Наиболее используемая «фишка» 3d touch — это открытие контекстного меню без запуска программы. При сильном нажатии на иконку приложения на рабочем столе, открывается меню со свойствами и доступными функциями. Таким образом, для постоянных действий вам не надо ждать открытия приложения и совершать несколько лишних нажатий в общем меню. Так, App Store в контекстном меню предлагает поиск по магазину и ввод кода iTunes. Доступна кнопка обновления всех приложений и быстрые покупки. Для Safari доступно открытие новой вкладки, вкладки инкогнито, запуск панели закладок. Приложение «Музыка» откроет недавно прослушанные треки с полем поиска, а «Телефон» покажет четыре последних контакта, предложит создать новый и отобразит строку поиска.
Дополнительная функциональность
Ряд приложений используют технологию 3d touch для вызова дополнительных функций. В Instagam при сильном нажатии на миниатюре открывается полная версия изображения. WhatsApp и ряд других мессенджеров показывает предпросмотр выбранного диалога. Safari также может показать предварительную информацию с веб-страницы, без перехода на нее. Стандартное приложение «Сообщения» использует 3d touch для выбора шаблонных фраз ответа в диалогах.
Как включить
Теперь о том, как включить 3d touch на айфоне. По умолчанию функция включена на всех устройствах Apple, однако если она была кем-то отключена, то активировать ее несложно:
Как отключить
В том случае, если вам сложно привыкнуть к новой для себя функции, и она сильно мешает в повседневной работе, то отключите ее. Быстрого доступа к настройке нет, так что откройте пункт 3D Touch по пути, указанному в предыдущем разделе, и установите тумблер в положение «Выключено».
Настройка функции 3D Touch
Вам доступна регулировка чувствительности экрана к нажатиям. Если функция часто ложно срабатывает или наоборот, вы считаете, что прикладываете слишком много усилий для активации функции, то откорректируйте чувствительность датчиков. Для этого зайдите по пути «Настройки – Основные – Универсальный доступ – 3D Touch» и установите ползунок в комфортное положение. По умолчанию установлено среднее значение. При низкой чувствительности датчиков сила давления будет увеличиваться, при высокой — уменьшаться. Для тестирования силы нажатия под ползунком расположена картинка, с помощью которой пользователь проверяет установленный уровень давления на экран.
3D Touch на iPhone: что это, как пользоваться (все примеры), как включить и выключить
Если у вас iPhone 6s или более новая модель «яблочного» смартфона, вы наверняка знаете о такой функции, как 3D Touch. Если нет — это когда вы нажимаете на экран с усилием и появляется контекстное меню с дополнительными функциями. Но бьемся об заклад — вы используете далеко не все возможности 3D Touch! Узнать о функции больше и облегчить себе жизнь вам поможет эта статья.
Что такое функция 3D Touch (3Д тач)?
3D Touch — технология Apple позволяющая определять силу нажатия на дисплей. Благодаря этой функции, можно (при нажатии на экран iPhone с усилием) вызвать некоторые функции приложения без его запуска. Впервые 3Д тач появился в смартфонах iPhone 6s и iPhone 6s Plus. Работа технологии основана на другой разработке Apple под названием Force Touch, использованной в часах Apple Watch и на трекпадах ноутбуков Macbook.
На каких iPhone работает 3D Touch?
3D Touch поддерживается на iPhone 6s, iPhone 6s Plus, iPhone 7, iPhone 7 Plus, iPhone 8, iPhone 8 Plus и iPhone X.
Как пользоваться 3D Touch (3Д тач) на iPhone?
Ниже вы найдете исчерпывающий список сценариев для применения 3D Touch.
1. Иконки приложений
Самое простое действие. Просто коснитесь иконки приложения сильнее, чем делаете это обычно. Перед вами откроются полезные шорткаты (кнопки быстрого доступа) к полезным и часто используемым функциям. Некоторые приложения выводят и мини-версию своего виджета.
Информация по тому, что даёт 3D Touch для отдельных приложений:
App Store — быстрый доступ к поиску по магазину, ввод кода iTunes, кнопка «Обновить все» и переход к Покупкам.
Музыка — виджет с недавно воспроизведенными песнями и поле поиска.
Safari — открытие новой вкладки, «приватная» вкладка, запуск панели закладок и Списка для чтения;
Телефон — быстрый доступ к 4 контактам, поиск и создание нового контакта.
Фото — виджет для вкладки «Воспоминания», и разделы недавно просмотренных фотографий, избранного и поиск.
iBooks — недавно открытые документы, книги и аудиокниги.
Погода — виджет с вашим текущим местоположением, шорткаты для добавления трех любимых городов.
Камера — шорткат для быстрого доступа к созданию селфи, портрета, записи видео, slo-mo и создания простой фотографии.
Календарь — виджет с предстоящими делами и шорткат для добавления новых ивентов.
Часы — шорткаты для быстрого создания будильника, запуска таймера или секундомера.
Карты — виджет с местом назначения, шорткаты для того, чтобы отметить и поделиться вашим местоположением.
Заметки — недавно открывавшиеся заметки, шорткаты для создания заметки, списка дел и зарисовки.
2. Открыть меню многозадачности
Лучше всего это получается тогда, когда на вашем iPhone нет чехла. Сделайте жест 3D Touch в левом углу экрана, дождитесь тактильного отклика и свайпните вправо. В результате откроется меню многозадачности с запущенными приложениями. Если вы продолжите свайпить вправо, то перейдете в последнюю из открытых программ.
3. Уведомления
Начиная с iOS 10 уведомления в мобильной операционке Apple стали интерактивными. Некоторые программы — например, Viber или Сообщения — после 3D Touch-жеста выводят на заблокированный экран большое превью пришедшего сообщения. 3D Touch вызывает и контекстное меню с дополнительными опциями по использованию — к примеру, ретвит в приложении Twitter.
3D Touch также позволяет быстро удалить все уведомления из Центра уведомлений — для этого нужно сделать жест и нажать на значок «х» в Центре.
4. Safari
Если сделать 3D Touch-нажатие по ссылке, появится всплывающее окно с информаций, имеющейся на этой странице (т.е. вы можете даже не переходить на другой сайт). Если вы все же захотите перейти, просто нажмите на экран сильнее или уберите палец с экрана. Apple называет эту функцию Peek and Pop. Название, конечно, смешное — но удобство вы оцените очень быстро. А в мессенджерах эта функция выводит на экран предпросмотр диалога.
5. Пункт управления
3D Touch-нажатие на регулировку звука открывает окно более точной регулировки:
Нажатие на мини-плееер открывает его в новом окне более подробно:
Фонарик меняет интенсивность освещения:
Кнопка Яркость позволяет менять интенсивность яркости экрана, а также выводит управление функциями Night Shift и True Tone:
Нажатие на Калькулятор позволяет скопировать последний результат:
Нажатие на кнопку Камера — позволяет быстро сделать селфи, записать видео или снять портрет:
Нажатие на карточку с беспроводными модулями раскрывает большее количество возможностей:
6. Клавиатура превращается в трекпад
Это одна из самых ценных возможностей 3D Touch. Если вам нужно поработать с курсором, просто коснитесь виртуальной клавиатуры iPhone с усилием — и она превратится в сенсорную панель-трекпад! Водите курсор по экрану в любую сторону — новоиспеченный «трекпад» всё поймет.
7. Папка с уведомлениями
Предположим, что на вашем iPhone есть папками с десятком приложений — и у нескольких из них имеется хотя бы одно уведомление. 3D Touch-жест по папке — и на экране выстроятся все программы с красным кружком над ними. Наведите палец на нужное название и отпустите его — приложение запустится немедленно.
8. Загрузка приложений
3D Touch-прикосновение к приложению, которое в данный момент загружает обновление из интернета, даст доступ к дополнительным опциям — приостановке загрузки или расстановке приоритетов (полезно, когда App Store обновляет сразу 30 приложений сразу, и вы хотите как можно скорее запустить одно из них).
9. Приложение Телефон
Нажатие на любой контакт выводит контекстное меню с полезными опциями — звонком через FaceTime, отправка E-mail или SMS. Удобно — не надо лишний раз лазить по менюшкам.
10. Музыка
Возможность вызвать контекстное меню по нажатию на любую песню.
11. Сообщения
Отправка эффектов в iMessage («пузырей» и т.п.). Для этого необходимо сделать 3D Touch-нажатие по синей стрелочке «вверх».
Иконка контакта. Когда вы делаете 3D Touch-жест по иконке с контактом, выводится меню со всеми способами связи с человеком.
Превью беседы. Требуется прикосновение к иконке с диалогом между вами и нужным собеседником.
12. Сторонние приложения с удачной реализацией 3D Touch
Instagram. Всякий раз, когда вы видите миниатюру, нажмите на неё с усилием — и просмотрите полную версию контента.
WhatsApp. Выводит 4 последних чата и опцию для запуска новой беседы. Также есть вариант для отображения всех избранных сообщений, которые вы когда-либо помечали «звездочкой».
Telegram. Виджет с последними чатами, а также шоткаты Поиска, нового сообщения, съемки фото или видео и т.д.
Runtastic. Виджет статистики последних тренировок, а также шорткаты для быстрого доступа.
Яблык. Официальное приложение нашего сайта предлагает быстрый переход по самым популярным разделам yablyk.com.
Настройка 3D Touch «под себя»
Если вы считаете, что использование 3D Touch требует слишком больших физических усилий — вовсе необязательно отказываться от функции! Её можно настроить так, как вам нравится. Для этого откройте Настройки, выберите Основные, затем Универсальный доступ и 3D Touch, после чего установите подходящую силу нажатия (чувствительность).
Используйте 3D Touch
С каждым годом владельцы iPhone все активнее пользуются функцией 3D Touch. И в этом нет ничего удивительного — после непродолжительного периода привыкания вы просто не сможете обходиться без 3D Touch, ведь это на самом деле очень удобная и экономящая много времени «фича». Не откладывайте знакомство с ней в долгий ящик — попробуйте прямо сейчас!
Как отключить 3D Touch
Введение в 3D Touch
С выходом iPhone 6s и iPhone 6s Plus компания Apple представила нам совершенно новый способ взаимодействия с нашими телефонами: жест сильного нажатия. Как вы знаете, эта функция уже доступна на Apple Watch и MacBook и в MacBook Pro под названием Force Touch. Это — буквально — добавило новое понятие к пользовательскому интерфейсу.
Если вы задаетесь вопросом, почему Force Touch было переименовано на 3D Touch для iPhone, тогда вы не одни такой. Вскоре после того, как Крейг Федериги (Craig Federighi), который также был явно озадачен названием, представил эту новую возможность, возникло много догадок. Чем не устроило название Force Touch? Слишком много шуток из Звездных войн?
Но есть разница! Очевидно, что Force Touch может распознать только сильное нажатие, тогда как функция 3D Touch более чувствительная и может выделить несколько уровней нажатий на основе того, как сильно вы нажимаете.
Хотя изменения могут показаться незначительными, именно они позволяют разработчикам сделать измерения на iPhone более точными. Возьмите это приложение Gravity, например, которое превращает ваш iPhone в цифровые весы с помощью Force Touch. Хотя оно и было отклонено компанией Apple по неясным причинам, идея замечательная. Таким образом, чтобы показать вам, как работает 3D Touch, давайте попробуем сделать похожее приложение!
Давайте начнем
Для начала скачайте этот шаблон проекта, который я создал. По сути, это просто пустое приложение создание на основе шаблона Single View iPhone application. Я создал проект разместил (UILabels & UIImage) и подключил IBOutlets в ViewController.swift.
Дизайн нашего приложения довольно прост: у нас есть один контроллер с 2 метками: одна это заголовок и вторая метка, которая показывает процент силы нажатия на экран iPhone.
Давайте начнем разработку! На iPhone 6s и 6s Plus у объектов UITouch есть два новых свойства типа CGFloat, под названием force и maximumPossibleForce. Force представляет, то насколько сильным является касание, где 1.0 означает среднее касание. MaximumPossibleForce показывает максимальную силу для касания.
Всякий раз, когда пользователь нажимает на сенсор, вызывается метод touchesBegan, а затем touchesMoved, если пользователь водит своим пальцем по экрану, то тогда вызывается touchedCancelled или TouchesEnded в зависимости от ситуации. Для наших целей метод touchesMoved является единственным способом, который нам нужен. TouchesMoved имеет два параметра: touches (касания) и event (событие). Касания — набор (неупорядоченный набор различных объектов) объектов UITouch. Для касания должен быть точно один объект UITouch, но мы можем быть не достаточно осторожными, поэтому настоятельно рекомендуется проверить, равен ли touches.first (первый объект UITouch сенсорного набора) nil при помощи дополнительной привязки. Вставьте следующий метод в ViewController.swift:
В помощью оператора if мы проверяем, поддерживает ли устройство 3D Touch. Эта часть необязательна, если вы делаете этот проект для удовольствия. Однако если вы собираетесь опубликовать приложение в App Store, это является обязательным требованием, выполнение проверки, так как более старые устройства такие как iPhone 6 не поддерживают 3D Touch.
Обратите внимание на то, что я также проверял, запускается ли устройство на iOS 9.0 или более поздних версиях. Я делаю это с помощью нового синтаксиса #available, представленного в Swift 2.0. Если Вы хотите узнать больше о новых функциях и возможностях в Swift 2.0, я рекомендую вам прочитать эту статью. Снова эта проверка необязательна, если ваша целевая платформа для приложения 9.0 или выше.
Чтобы получить силу нажатия в процентах, просто разделите силу касания на максимальную силу (т.е. touch.maximumPossibleForce), которая является максимально возможной силой нажатия. Тогда обновите текст метки. Вы можете обновить метод следующим образом:
Если запустите приложение на iPhone 6s/6s Plus, оно должно показать силу нажатия в процентах при нажатии на экран. Однако так как мы делаем шкалу, возможно вы захотите добавить количество граммов, которые вы взвешиваете на своем iPhone. Согласно Райану Маклиду, датчик взвесит максимальный веса
385g. Таким образом maximumPossibleForce соответствует 385 граммам (приблизительно 3.8 Ньютона). Путем нехитрых вычислений, вы можете конвертировать % силы в граммы. Все, что нам нужно сделать, это умножить процент силы нажатия на 385. Для объектов весом 385 граммов или больше, мы просто изменяем метку на “385+ grams”.
Теперь обновите метод, используя следующий фрагмент кода:
Круто! Вы сделали свое Digital Scale приложения.
На данный момент приложение не сбрасывает вес до нуля после того, как вы убираете предмет или прекращаете касаться вашего экрана. Вы можете реализовать touchesEnded метод, чтобы сбросить метку.
Быстрые действия на главном экране
Еще одно отличное использование 3D Touch — это быстрые действия на главном экране. Quick Actions дают пользователям меню для перехода к каталогу вашего приложения напрямую. Просто сильно нажмите на значок программы, и вы увидите меню. С появлением технологий 3D Touch, такие приложения как Twitter и Instagram и некоторые других приложения, показали как используют эту новую функцию.
Обратите внимание, что я использовал ‘$(PRODUCT_BUNDLE_IDENTIFIER)’ вместо ‘com.appcoda.Scale’ или любой другой идентификатор, который вы используете. Это в целях безопасности: если, по какой-либо причине, я изменю Bundle ID в ‘General’, то будет затронут весь проект и идентификатор будет изменен везде. В противном случае, мне придется менять его везде вручную. В вашем файле info.plist, вы можете увидеть, что ключ Bundle Identifier использует тот же подход: ‘$(PRODUCT_BUNDLE_IDENTIFIER)‘ описывает путь к идентификатору вашего проекта.
Последнее, что осталось сделать, это реализовать Quick action, когда пользователь запускает его. Главная работа обрабатываются в AppDelegate.swift в методе performActionForShortcutItem. Когда Quick Action активируется, вызовется метод. Поэтому вы должны реализовывать этот метод для обработки быстрых действий:
Как ожидается, вызовите обработчик и передадите в него нулевое значение, в зависимости от успеха/отказа быстрого действия. Здесь мы создаем отдельную функцию handleQuickAction, чтобы обработать действие. Отличным способом для представления нескольких случаев Quick Action является использование перечислений с помощью ‘UIApplicationShortcutItemType’ в качестве необработанного значения. Объявите перечисление и реализуйте метод handleQuickAction, как показано ниже, чтобы задать цвет фона синим, когда приложение будет запущено посредством быстрого действия:
Это довольно просто. Если вы теперь запустите приложение и запустите его через быстрые действия, фон станет синим.
О чем же нужно не забыть?
Есть один моментом, который следует учитывать. С точки зрения последовательности запуска есть различие между приложением, которое запускается, и приложением, которое возобновляется с помощью Quick Action. Так как Вы знаете, когда приложение запускается, вызываются методы willFinishLaunchingWithOptions затем метод anddidFinishLaunchingWithOptions. Но когда приложение возобновляется путем Quick Actions, то он лишь провоцирует выполнение метода performActionForShortcutItem.
Если Вы посмотрите на метод didFinishLaunchingWithOptions, то вы увидите, что у нас есть строка кода, чтобы установить цвет фона белым. Он используется, когда приложение запускается обычно, через иконку приложения.
Вот откуда исходит проблема: при запуске приложения с помощью быстрое действие, вызываются willFinish, didFinish, а затем performActionForShortcutItem. Поэтому сначала устанавливается белый цвет фона, а затем меняется на синий. Очевидно, Вы не хотите устанавливать цвет фона белым, когда пользователь запускает приложение с помощью быстрых действий.
Чтобы решить эту проблему, мы должны осуществить проверку в методе didFinishLaunchingWithOptions:
Чтобы определить, запущено ли приложение посредством Quick Action, Вы можете проверить функциональную клавишу запуска UIApplicationLaunchOptionsShortcutItemKey. Объект UIApplicationShortcutItem доступен как значение функциональной клавиши запуска. Если приложение запущено путем Quick Action, мы просто вызываем handleQuickAction, чтобы изменить фон на синий.
Поскольку мы уже обработали быстрое действие в didFinishLaunchingWithOptions, мы не хотим вызывать performActionForShortcutItem, чтобы выполнить handleQuickAction снова. Потому мы возвращаем значение false, сообщая системе не вызывать метод performActionForShortcutItem.
Вот и все! Вы можете теперь протестировать приложение. Quick Action должно работать отлично.
3D Touch — отличный способ добавления удобных и приятных функций к Вашему приложению. Однако Вы должны знать, что не все устройства поддерживают 3D Touch, хотя это может измениться в будущем.
После прочтения этой статьи вы сможете добавлять Quick Actions к вашему iOS приложению и определять силу касания.
Для сравнения вы можете загрузить полный проект Xcode. Не забудьте поделиться мыслями в комментариях об этом руководстве и 3D Touch.