Какова сила взгляда и популярности на новых iPhone?

iOS 9.0 добавил новое свойство force на UITouch учебный класс. Для новых iPhone (6S) это позволяет получить значение давления пальца пользователя.

Значение force свойство, кажется, установлено между 0 и 6.66667.

Также в iOS 9 добавлена ​​функция просмотра и всплытия - когда пользователь применяет определенный уровень нажатия пальцем на некоторых элементах управления, запускается запрограммированное действие.

Мой вопрос: каковы эти уровни давления (для просмотра и поп) с точки зрения стоимости force собственностью UITouch?

Другими словами, на какое значение мне нужно установить порог для force свойство для пользователя, чтобы требовать применить тот же уровень давления пальца, что и при использовании функции "Peek" (или Pop)?

2 ответа

Вы можете попробовать соблюдать force значение с помощью функции ниже. Кажется, что для взгляда force значение составляет 1,33 (нормализованная сила = 0,20) и для поп force значение 5,0 (нормализованная сила = 0,75). При взгляде force уровень, он вызывает UIViewControllerPreviewingDelegate метод (UIViewController *)previewingContext:(id<UIViewControllerPreviewing>)previewingContext viewControllerForLocation:(CGPoint)location для просмотра.

- (void)touchesMoved:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
{
    [super touchesMoved:touches withEvent:event];

    UITouch *touch = [touches anyObject];

    CGFloat maximumPossibleForce = touch.maximumPossibleForce;
    CGFloat force = touch.force;

    NSLog(@"***** force value : %f", force);

    CGFloat normalizedForce = force/maximumPossibleForce;

    NSLog(@"Normalized force : %f", normalizedForce);

    if (normalizedForce > 0.75)
    {
        // Pop
    }
    else if (normalizedForce > 0.20)
    {
        // Peek
    }
}

По умолчанию вам не нужно устанавливать принудительный порог для операций pop и peek, значения предварительно определены в платформе. Вы можете сослаться на эту ссылку https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/Adopting3DTouchOniPhone/3DTouchAPIs.html о том, как реализовать просмотр и вставку в вашем контроллере представления. Если вы хотите настроить время просмотра и извлечения, вам следует проверить значение силы, которое не рекомендуется. Согласно яблочной документации

Сила касания, где значение 1,0 представляет силу среднего касания (определяется системой, а не пользователем).

Peek в основном для показа предварительного просмотра, для которого вам придется реализовать различные вещи. Вы можете получить образец кода здесь https://developer.apple.com/library/ios/samplecode/ViewControllerPreviews/Introduction/Intro.html. Поп это нормальное действие.

Другие вопросы по тегам