package org.adaptlab.chpir.android.survey.QuestionFragments;
import org.adaptlab.chpir.android.survey.QuestionFragment;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.RatingBar;
public class RatingQuestionFragment extends QuestionFragment {
private final static int NUM_STARS = 5;
private float mRating;
private RatingBar mRatingBar;
@Override
protected void createQuestionComponent(ViewGroup questionComponent) {
mRatingBar = new RatingBar(getActivity());
mRatingBar.setNumStars(NUM_STARS);
mRatingBar.setLayoutParams(new ViewGroup.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT));
mRatingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
@Override
public void onRatingChanged(RatingBar ratingBar, float rating,
boolean fromUser) {
mRating = rating;
saveResponse();
}
});
questionComponent.addView(mRatingBar);
}
@Override
protected String serialize() {
return String.valueOf(mRating);
}
@Override
protected void deserialize(String responseText) {
if (!responseText.equals("")) {
mRating = Float.parseFloat(responseText);
mRatingBar.setRating(mRating);
}
}
}