IOS Фан-карусель - PullRequest
       13

IOS Фан-карусель

2 голосов
/ 29 ноября 2011

Я создаю приложение IOS, используя iCarousel (http://cocoacontrols.com/platforms/ios/controls/icarousel)

Я хочу преобразовать карусель, чтобы она выглядела как «ВЕНТИЛЯТОР». Таким образом, все карты будут объединены в один ponit вверху, и вы можете прокручивать карты.

Мой клиент получил идею от Drinkspiration of Absolut:

Drinkspiration screenshot

Как мне изменить карусель, чтобы получить этот "эффект"

Спасибо за вашу помощь

1 Ответ

4 голосов
/ 12 декабря 2011

Вот, пожалуйста:

- (CATransform3D)carousel:(iCarousel *)_carousel transformForItemView:(UIView *)view withOffset:(CGFloat)offset
{
    CGFloat radius = 400.0f;
    CGFloat angle = 0.5f; // in radians

    CATransform3D transform = CATransform3DIdentity;
    transform = CATransform3DTranslate(transform, 0.0f, -radius, 0.0f);
    transform = CATransform3DRotate(transform, -angle * offset, 0.0f, 0.0f, 1.0f);
    return CATransform3DTranslate(transform, 0.0f, radius, 0.0f);
}

Радиус и угол оптимизированы для примера приложения, включенного в iCarousel, поэтому вам необходимо настроить их для своего приложения. Вам также нужно будет вернуть numberOfVisibleItems, равное 3, иначе представления будут округляться и перекрываться, если в карусели слишком много.

UPDATE:

Этот тип карусели теперь встроен в библиотеку iCarousel. Просто используйте iCarouselTypeWheel.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...