Кто-нибудь знает, есть ли на iPhone 5-звездочный рейтинг? - PullRequest
12 голосов
/ 15 ноября 2008

В группах Google и некоторых других веб-сайтах есть 5-звездочный рейтинг, который выглядит довольно аккуратно, например, в этом URL: http://groups.google.com/group/Google-Picasa-Data-API/browse_thread/thread/b5a346e6429a70a7?hl=en

Мне интересно, есть ли существующий 5-звездочный компонент рейтинга в среде iPhone. Или, если нет, если кто-нибудь знает, с чего начать?

Спасибо

Ответы [ 8 ]

14 голосов
/ 12 января 2011

Вот еще одно решение с открытым исходным кодом: https://github.com/dlinsin/DLStarRating

image

6 голосов
/ 30 июля 2009

UIView, который позволяет создавать компоненты рейтинга, чтобы обеспечить такой же опыт работы приложений AppStore или Youtube на iPhone.

http://code.google.com/p/s7ratingview/

5 голосов
/ 18 ноября 2008

Я бы пошел проще. Подкласс UIControl и реализует методы touchesBegan: touchesMoved: и touchesEnded:. Вы можете определить, какую звезду пользователь нажимал / перетаскивал / отпускал с помощью координаты X касания. Например:

CGFloat relativeTouchLocation = [event locationInView:self] / self.bounds.size.width;

Тогда вам решать, какие звезды освещены, основываясь на этом значении. Да, и отправить событие UIControlEventValueChanged.

Очевидно, что вы также переопределяете drawRect: рисовать звезды на виде.

Хотя приведенное выше решение Джейсона сработает, ваш пользователь не сможет скользить пальцем по элементу управления, чтобы точно настроить свой рейтинг. Это также даст вам возможность сделать пол-звезды или другие точные настройки.

4 голосов
/ 15 ноября 2008

Я не знаю ни о каких бесплатных / доступных компонентах, но если никто не предлагает один и / или вы не можете найти тот, который вам нравится, это должно быть довольно тривиальным, чтобы свернуть свои собственные. Проще говоря, вам нужно только:

  1. Создать / найти значок звезды - один контур (не выбран), один заполнен
  2. Создание кнопки UIB и установка значков для выбранных / невыбранных состояний
  3. Создайте вид контейнера, который содержал ваши звезды x, и когда он был выбран, контейнер мог установить выбранное состояние для любой кнопки слева от нажатой кнопки.

Построение не займет много времени ...

3 голосов
/ 18 июня 2011

Еще один выбор контроля рейтинга. Это позволяет вам вводить рейтинг, а не только просматривать его. http://cocoacontrols.com/search?utf8=%E2%9C%93&q=rating&commit=Search

1 голос
/ 18 ноября 2008

Как правило, если его нет в Интерфейсном Разработчике, он недоступен "бесплатно", и вам придется написать его самостоятельно.

Когда дело доходит до iPhone, Apple также предоставила легко понятный пример кода, который демонстрирует все доступные компоненты и способы их использования. Если вы не видите этого в их коде, вы должны создать его самостоятельно.

1 голос
/ 18 ноября 2008

Я бы, вероятно, реализовал это, используя UIView с пользовательскими сообщениями touchesXXX, чтобы пользователь мог, например, коснуться первой звезды и вытянуть четырехзвездочный рейтинг. Просто мои 0,02 доллара.

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