RatingCompat

public final class RatingCompat
extends Object implements Parcelable

java.lang.Object
   ↳ android.support.v4.media.RatingCompat


A class to encapsulate rating information used as content metadata. A rating is defined by its rating style (see RATING_HEART, RATING_THUMB_UP_DOWN, RATING_3_STARS, RATING_4_STARS, RATING_5_STARS or RATING_PERCENTAGE) and the actual rating value (which may be defined as "unrated"), both of which are defined when the rating instance is constructed through one of the factory methods.

Summary

Constants

int RATING_3_STARS

A rating style with 0 to 3 stars.

int RATING_4_STARS

A rating style with 0 to 4 stars.

int RATING_5_STARS

A rating style with 0 to 5 stars.

int RATING_HEART

A rating style with a single degree of rating, "heart" vs "no heart".

int RATING_NONE

Indicates a rating style is not supported.

int RATING_PERCENTAGE

A rating style expressed as a percentage.

int RATING_THUMB_UP_DOWN

A rating style for "thumb up" vs "thumb down".

Inherited constants

Fields

public static final Creator<RatingCompat> CREATOR

Public methods

int describeContents()
static RatingCompat fromRating(Object ratingObj)

Creates an instance from a framework Rating object.

float getPercentRating()

Return the percentage-based rating value.

Object getRating()

Gets the underlying framework Rating object.

int getRatingStyle()

Return the rating style.

float getStarRating()

Return the star-based rating value.

boolean hasHeart()

Return whether the rating is "heart selected".

boolean isRated()

Return whether there is a rating value available.

boolean isThumbUp()

Return whether the rating is "thumb up".

static RatingCompat newHeartRating(boolean hasHeart)

Return a Rating instance with a heart-based rating.

static RatingCompat newPercentageRating(float percent)

Return a Rating instance with a percentage-based rating.

static RatingCompat newStarRating(int starRatingStyle, float starRating)

Return a Rating instance with a star-based rating.

static RatingCompat newThumbRating(boolean thumbIsUp)

Return a Rating instance with a thumb-based rating.

static RatingCompat newUnratedRating(int ratingStyle)

Return a Rating instance with no rating.

String toString()
void writeToParcel(Parcel dest, int flags)

Inherited methods

Constants

RATING_3_STARS

public static final int RATING_3_STARS

A rating style with 0 to 3 stars.

Constant Value: 3 (0x00000003)

RATING_4_STARS

public static final int RATING_4_STARS

A rating style with 0 to 4 stars.

Constant Value: 4 (0x00000004)

RATING_5_STARS

public static final int RATING_5_STARS

A rating style with 0 to 5 stars.

Constant Value: 5 (0x00000005)

RATING_HEART

public static final int RATING_HEART

A rating style with a single degree of rating, "heart" vs "no heart". Can be used to indicate the content referred to is a favorite (or not).

Constant Value: 1 (0x00000001)

RATING_NONE

public static final int RATING_NONE

Indicates a rating style is not supported. A Rating will never have this type, but can be used by other classes to indicate they do not support Rating.

Constant Value: 0 (0x00000000)

RATING_PERCENTAGE

public static final int RATING_PERCENTAGE

A rating style expressed as a percentage.

Constant Value: 6 (0x00000006)

RATING_THUMB_UP_DOWN

public static final int RATING_THUMB_UP_DOWN

A rating style for "thumb up" vs "thumb down".

Constant Value: 2 (0x00000002)

Fields

CREATOR

public static final Creator<RatingCompat> CREATOR

Public methods

describeContents

public int describeContents ()

Returns
int

fromRating

public static RatingCompat fromRating (Object ratingObj)

Creates an instance from a framework Rating object.

This method is only supported on API 19+.

Parameters
ratingObj Object: A Rating object, or null if none.

Returns
RatingCompat An equivalent RatingCompat object, or null if none.

getPercentRating

public float getPercentRating ()

Return the percentage-based rating value.

Returns
float a rating value greater or equal to 0.0f, or a negative value if the rating style is not percentage-based, or if it is unrated.

getRating

public Object getRating ()

Gets the underlying framework Rating object.

This method is only supported on API 19+.

Returns
Object An equivalent Rating object, or null if none.

getRatingStyle

public int getRatingStyle ()

Return the rating style.

Returns
int one of RATING_HEART, RATING_THUMB_UP_DOWN, RATING_3_STARS, RATING_4_STARS, RATING_5_STARS, or RATING_PERCENTAGE.

getStarRating

public float getStarRating ()

Return the star-based rating value.

Returns
float a rating value greater or equal to 0.0f, or a negative value if the rating style is not star-based, or if it is unrated.

hasHeart

public boolean hasHeart ()

Return whether the rating is "heart selected".

Returns
boolean true if the rating is "heart selected", false if the rating is "heart unselected", if the rating style is not RATING_HEART or if it is unrated.

isRated

public boolean isRated ()

Return whether there is a rating value available.

Returns
boolean true if the instance was not created with newUnratedRating(int).

isThumbUp

public boolean isThumbUp ()

Return whether the rating is "thumb up".

Returns
boolean true if the rating is "thumb up", false if the rating is "thumb down", if the rating style is not RATING_THUMB_UP_DOWN or if it is unrated.

newHeartRating

public static RatingCompat newHeartRating (boolean hasHeart)

Return a Rating instance with a heart-based rating. Create and return a new Rating instance with a rating style of RATING_HEART, and a heart-based rating.

Parameters
hasHeart boolean: true for a "heart selected" rating, false for "heart unselected".

Returns
RatingCompat a new Rating instance.

newPercentageRating

public static RatingCompat newPercentageRating (float percent)

Return a Rating instance with a percentage-based rating. Create and return a new Rating instance with a RATING_PERCENTAGE rating style, and a rating of the given percentage.

Parameters
percent float: the value of the rating

Returns
RatingCompat null if the rating is out of range, a new Rating instance otherwise.

newStarRating

public static RatingCompat newStarRating (int starRatingStyle, 
                float starRating)

Return a Rating instance with a star-based rating. Create and return a new Rating instance with one of the star-base rating styles and the given integer or fractional number of stars. Non integer values can for instance be used to represent an average rating value, which might not be an integer number of stars.

Parameters
starRatingStyle int: one of RATING_3_STARS, RATING_4_STARS, RATING_5_STARS.

starRating float: a number ranging from 0.0f to 3.0f, 4.0f or 5.0f according to the rating style.

Returns
RatingCompat null if the rating style is invalid, or the rating is out of range, a new Rating instance otherwise.

newThumbRating

public static RatingCompat newThumbRating (boolean thumbIsUp)

Return a Rating instance with a thumb-based rating. Create and return a new Rating instance with a RATING_THUMB_UP_DOWN rating style, and a "thumb up" or "thumb down" rating.

Parameters
thumbIsUp boolean: true for a "thumb up" rating, false for "thumb down".

Returns
RatingCompat a new Rating instance.

newUnratedRating

public static RatingCompat newUnratedRating (int ratingStyle)

Return a Rating instance with no rating. Create and return a new Rating instance with no rating known for the given rating style.

Parameters
ratingStyle int: one of RATING_HEART, RATING_THUMB_UP_DOWN, RATING_3_STARS, RATING_4_STARS, RATING_5_STARS, or RATING_PERCENTAGE.

Returns
RatingCompat null if an invalid rating style is passed, a new Rating instance otherwise.

toString

public String toString ()

Returns
String

writeToParcel

public void writeToParcel (Parcel dest, 
                int flags)

Parameters
dest Parcel

flags int