Thursday 13 September 2012

Rating bar in Android and How to Save Ratingbar state in next time open that application


Ratingbar in Android Java.........

How to Save ratingbar state in next time open that app...........

Main Program : RatingbarMainActivit.java

package com.example.ratingbar;

import android.os.Bundle;
import android.preference.PreferenceManager;
import android.app.Activity;
import android.content.SharedPreferences;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.RatingBar;
import android.widget.RatingBar.OnRatingBarChangeListener;
import android.widget.TextView;
import android.widget.Toast;

public class RatingbarMainActivity extends Activity {

    RatingBar ratingbarClick;
    Button sub_btn;
    TextView textRatingView , textRatingViewSave;
    Boolean val = true;
    float ans = (float) 0.0;
    //--------------------------------------------------------------------------------------------
    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_ratingbar_main);
       
        ratingbarClick = (RatingBar) findViewById(R.id.ratingBar1);
        ratingbarClick.setOnRatingBarChangeListener(rateObj);
       
       
        SharedPreferences sharePref = PreferenceManager.getDefaultSharedPreferences(RatingbarMainActivity.this);
        ans = sharePref.getFloat("Get_Rating", 0.0f);
        System.out.println("--------------------------------------ans = " + ans);
        if(val) {
            ratingbarClick.setRating(ans);
        }
        else {
            ratingbarClick.setRating(ans);
        }
       
        textRatingView = (TextView) findViewById(R.id.ratingView);
       

    }

    //--------------------------------------------------------------------------------------------
    //--------------------------------------------------------------------------------------------
   
        RatingBar.OnRatingBarChangeListener rateObj = new RatingBar.OnRatingBarChangeListener() {
           
            @Override
            public void onRatingChanged(RatingBar ratingBar, float rating,boolean fromUser) {
               
                //textRatingView.setText(String.valueOf(rating));
                ans = ratingbarClick.getRating();
               
                SharedPreferences sharePref = PreferenceManager.getDefaultSharedPreferences(RatingbarMainActivity.this);
                SharedPreferences.Editor edit = sharePref.edit();
                edit.putFloat("Get_Rating", ans);
                edit.commit();
                val = false;
               
            }
        };

   
    //--------------------------------------------------------------------------------------------
   
}
Program 2 : activity_ratingbar_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/ratingBar1"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="15dp"
        android:layout_marginTop="23dp"
        android:text="Select Your Rating Bar Here"
        tools:context=".RatingbarMainActivity" />
   
    <RatingBar
        android:id="@+id/ratingBar1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="21dp"
        android:layout_marginTop="63dp" />


    <TextView
        android:id="@+id/ratingView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/ratingBar1"
        android:text="TextView" />

    <Button
        android:id="@+id/button1"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_centerVertical="true"
        android:text="Click To Save Rating In TextBox" />

</RelativeLayout>

3 comments:

Complete Details about eLitmus pH Test at Rs:699/- Share your java material and fresher interview Information for us to Help Others... mail to : vhkrishnan.v@gmail.com