Подтвердить что ты не робот

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

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

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

Спасибо

4b9b3361

Ответ 1

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

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

Ответ 3

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

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

Тогда вам просто нужно определить, какие звезды подсвечиваются на основе этого значения. О, и отправить событие UIControlEventValueChanged.

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

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

Ответ 4

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

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

Не нужно занимать много времени, чтобы построить...

Ответ 6

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

Ответ 7

Как правило, если это не в Interface Builder, оно не доступно "бесплатно", и вам придется писать его самостоятельно.

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