Estoy escribiendo un complemento de barra de desplazamiento. Al arrastrar, quiero simular la función de Safari (IOS), es decir, se permite el desbordamiento después de arrastrar hasta el borde. De hecho, Safari (IOS) tiene un efecto de disminución de bordes al arrastrar, es decir, se volverá cada vez más inmóvil. Este efecto parece realizarse mediante la función de amortiguación . Traté de buscar, pero no encontré una función particularmente adecuada. Encontré algunos contenidos relevantes en este artículo: Cómo funciona UIScrollView , pero no entiendo OC y Swift, y no soy muy bueno en matemáticas. Alguien puede ayudarme. ಥ_ಥ
Aquí está la función de amortiguación proporcionada por otro artículo: amortiguación de arrastre , pero de hecho, utiliza una función por partes para lograr el efecto de amortiguación. Aunque será más rápido, después de la prueba se encuentra que no cubre mis necesidades. Espero establecer claramente el valor objetivo máximo, pero en esta función, no puede controlar explícitamente el valor máximo.
Esta es una captura de pantalla del proyecto. En la actualidad, la parte arrastrada no se ha completado, pero la parte de control de la rueda se ha realizado y también se puede realizar el desbordamiento. Sin embargo, debido a que no existe una función de amortiguamiento adecuada, el incremento después del desbordamiento parece muy rígido.