How to save the value of your variable?

All your problems with Audio, Video and Images.

How to save the value of your variable?

Postby sojo » Thu May 28, 2009 6:25 am

Hi,
I wanted to ask if you want to save the value of your variable after closing my application. when you operate my application again the value stay the same before closing. how do it?
please help...
thanks
sojo
Developer
Developer
 
Posts: 35
Joined: Sat Apr 25, 2009 2:06 am

Top

Postby sujay » Thu May 28, 2009 7:41 am

u'll have to persist...
either using sqlite db or using the SharedPreferences...
add wat'll u require for subsequent calls into either of em...
sujay
Junior Developer
Junior Developer
 
Posts: 14
Joined: Wed May 20, 2009 11:01 am

Postby sojo » Thu May 28, 2009 1:09 pm

sujay
thanks... but how can i use these (SharedPreferences or sqlite db ) ?
sojo
Developer
Developer
 
Posts: 35
Joined: Sat Apr 25, 2009 2:06 am

Postby sujay » Thu May 28, 2009 1:18 pm

this is a sample for sqlite...
but its not optimized...
Syntax: [ Download ] [ Hide ]
Using java Syntax Highlighting
  1.  
  2. public class storenretrieve extends Activity {
  3.  
  4.         /** Called when the activity is first created. */
  5.  
  6.         private static class DatabaseHelper extends SQLiteOpenHelper {
  7.  
  8.  
  9.  
  10.                 DatabaseHelper(Context context) {
  11.  
  12.                         super(context, "Sujay", null, 2);
  13.  
  14.                 }
  15.  
  16.  
  17.  
  18.                 @Override
  19.  
  20.                 public void onCreate(SQLiteDatabase db) {
  21.  
  22.                         db.execSQL("CREATE TABLE " + "MyTable" + " (" + "ID"+ " INTEGER PRIMARY KEY," + "Title" + " TEXT," + "Author"+ " TEXT," + "Price" + " REAL" + ");");
  23.  
  24.                 }
  25.  
  26.  
  27.  
  28.                 @Override
  29.  
  30.                 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  31.  
  32.                         Log.w("Db Upgrade", "Upgrading database from version "+ oldVersion + " to " + newVersion+ ", which will destroy all old data");
  33.  
  34.                         db.execSQL("DROP TABLE IF EXISTS MyTable");
  35.  
  36.                         onCreate(db);
  37.  
  38.                 }
  39.  
  40.         }
  41.  
  42.  
  43.  
  44.         private DatabaseHelper dbHelper;
  45.  
  46.         private Bundle mState;
  47.  
  48.         private TableLayout tl;
  49.  
  50.         private SQLiteDatabase db;
  51.  
  52.         private String sort = "Title";
  53.  
  54.  
  55.  
  56.         @Override
  57.  
  58.         public void onCreate(Bundle savedInstanceState) {
  59.  
  60.                 super.onCreate(savedInstanceState);
  61.  
  62.                 mState = savedInstanceState;
  63.  
  64.                 dbHelper = new DatabaseHelper(this);
  65.  
  66.                 db = dbHelper.getWritableDatabase();
  67.  
  68.                 final String selColList[] = { "Title", "Author", "Price" };
  69.  
  70.                 Cursor res = db.query("MyTable", selColList, null, null, null, null,sort);
  71.  
  72.                 LinearLayout ll = new LinearLayout(this);
  73.  
  74.                 ll.setOrientation(LinearLayout.VERTICAL);
  75.  
  76.                 ScrollView sv = new ScrollView(this);
  77.  
  78.                 tl = new TableLayout(this);
  79.  
  80.                 tl.setStretchAllColumns(true);
  81.  
  82.                 if (res.getCount() >= 1) {
  83.  
  84.                         TableRow tr = new TableRow(this);
  85.  
  86.                         String cols[] = res.getColumnNames();
  87.  
  88.                         for (int i = 0; i < cols.length; i++) {
  89.  
  90.                                 TextView tv = new TextView(this);
  91.  
  92.                                 tv.setText(cols[i]);
  93.  
  94.                                 //final Context c = this;
  95.  
  96.                                 // Toast.makeText(c, "Test ", Toast.LENGTH_SHORT).show();
  97.  
  98.                                 tv.setOnTouchListener(new View.OnTouchListener() {
  99.  
  100.  
  101.  
  102.                                         @Override
  103.  
  104.                                         public boolean onTouch(View v, MotionEvent event) {
  105.  
  106.                                                 // TODO Auto-generated method stub
  107.  
  108.                                                 sort = ((TextView) v).getText().toString();
  109.  
  110.                                                 onCreate(mState);
  111.  
  112.                                                 return true;
  113.  
  114.                                         }
  115.  
  116.                                 });
  117.  
  118.  
  119.  
  120.                                 tv.setTextSize(20);
  121.  
  122.                                 tr.addView(tv);
  123.  
  124.                         }
  125.  
  126.                         tl.addView(tr);
  127.  
  128.                         ll.addView(tl);
  129.  
  130.                         tl = new TableLayout(this);
  131.  
  132.                         tl.setStretchAllColumns(true);
  133.  
  134.                        
  135.  
  136.                         while (res.moveToNext()) {
  137.  
  138.                                 tr = new TableRow(this);
  139.  
  140.                                 for (int i = 0; i < res.getColumnCount(); i++) {
  141.  
  142.                                         TextView tv = new TextView(this);
  143.  
  144.                                         tv.setText(res.getString(i));
  145.  
  146.                                         tv.setTextSize(15);
  147.  
  148.                                         tr.addView(tv);
  149.  
  150.                                 }
  151.  
  152.                                 tl.addView(tr);
  153.  
  154.                         }
  155.  
  156.                 } else {
  157.  
  158.                         TextView tv = new TextView(this);
  159.  
  160.                         tv.setText("No Records In Table");
  161.  
  162.                         tv.setTextSize(20);
  163.  
  164.                         tl.addView(tv);
  165.  
  166.                 }
  167.  
  168.                 res.close();
  169.  
  170.                 db.close();
  171.  
  172.                 dbHelper.close();
  173.  
  174.                 sv.addView(tl);
  175.  
  176.                 ll.addView(sv);
  177.  
  178.                 setContentView(ll);
  179.  
  180.         }
  181.  
  182.        
  183.  
  184.         @Override
  185.  
  186.         public boolean onCreateOptionsMenu(Menu menu) {
  187.  
  188.                 // TODO Auto-generated method stub
  189.  
  190.                 super.onCreateOptionsMenu(menu);
  191.  
  192.                 menu.add(0, 0, 0, "Insert Row");
  193.  
  194.                 menu.add(0, 1, 1, "Show Contents");
  195.  
  196.                 menu.add(0, 2, 2, "Clear Contents");
  197.  
  198.                 return true;
  199.  
  200.         }
  201.  
  202.  
  203.  
  204.         @Override
  205.  
  206.         public boolean onOptionsItemSelected(MenuItem item) {
  207.  
  208.                 // TODO Auto-generated method stub
  209.  
  210.                 super.onOptionsItemSelected(item);
  211.  
  212.                 switch (item.getItemId()) {
  213.  
  214.                 case 0:
  215.  
  216.                         Toast.makeText(this, "Hmm start inserting.. <img src="http://www.anddev.org/images/smilies/wink.png" alt=";)" title="Wink" />",Toast.LENGTH_SHORT).show();
  217.  
  218.                         TableLayout tl = new TableLayout(this);
  219.  
  220.                         // tl.setLayoutParams(new
  221.  
  222.                         // ViewGroup.LayoutParams(ViewGroup.MarginLayoutParams.FILL_PARENT,ViewGroup.MarginLayoutParams.FILL_PARENT));
  223.  
  224.                         final EditText titleText = new EditText(this);
  225.  
  226.                         titleText.setHint("Title");
  227.  
  228.                         tl.addView(titleText);
  229.  
  230.                         final EditText authorText = new EditText(this);
  231.  
  232.                         authorText.setHint("Author");
  233.  
  234.                         tl.addView(authorText);
  235.  
  236.                         final EditText priceText = new EditText(this);
  237.  
  238.                         priceText.setHint("Price");
  239.  
  240.                         tl.addView(priceText);
  241.  
  242.                         Button okButton = new Button(this);
  243.  
  244.                         okButton.setText("Insert");
  245.  
  246.                         final Context c = this;
  247.  
  248.                         okButton.setOnClickListener(new View.OnClickListener() {
  249.  
  250.  
  251.  
  252.                                 @Override
  253.  
  254.                                 public void onClick(View v) {
  255.  
  256.                                         ContentValues vals = new ContentValues();
  257.  
  258.                                         // vals.put("ID", 1);
  259.  
  260.                                         vals.put("Title", titleText.getText().toString());
  261.  
  262.                                         vals.put("Author", authorText.getText().toString());
  263.  
  264.                                         try {
  265.  
  266.                                                 vals.put("Price", Double.parseDouble(priceText.getText().toString()));
  267.  
  268.                                         } catch (NumberFormatException e) {
  269.  
  270.                                                 System.out.println("nfe");
  271.  
  272.                                         }
  273.  
  274.                                         db=dbHelper.getWritableDatabase();
  275.  
  276.                                         if (db.insert("MyTable", null, vals) != -1) {
  277.  
  278.                                                 Toast.makeText(c, "Data Inserted Successfully",Toast.LENGTH_SHORT);
  279.  
  280.                                         } else {
  281.  
  282.                                                 Toast.makeText(c, "Data Insertion Failed",Toast.LENGTH_SHORT);
  283.  
  284.                                         }
  285.  
  286.                                         db.close();
  287.  
  288.                                         dbHelper.close();
  289.  
  290.                                         onCreate(mState);
  291.  
  292.                                 }
  293.  
  294.                         });
  295.  
  296.                         tl.addView(okButton);
  297.  
  298.                         this.addContentView(tl, new LayoutParams(ViewGroup.MarginLayoutParams.FILL_PARENT,ViewGroup.MarginLayoutParams.FILL_PARENT));
  299.  
  300.                         break;
  301.  
  302.                 case 1:
  303.  
  304.                         Toast.makeText(this, "Hmm jus a sec", Toast.LENGTH_SHORT).show();
  305.  
  306.                         onCreate(mState);
  307.  
  308.                         break;
  309.  
  310.                 case 2:
  311.  
  312.                         db.delete("Mytable", null, null);
  313.  
  314.                         Toast.makeText(this, "All Data Successfully Deleted",Toast.LENGTH_SHORT).show();
  315.  
  316.                         onCreate(mState);
  317.  
  318.                         break;
  319.  
  320.                 default:
  321.  
  322.                         return false;
  323.  
  324.                 }
  325.  
  326.                 return true;
  327.  
  328.         }
  329.  
  330.         @Override
  331.  
  332.         protected void onStop() {
  333.  
  334.                 // TODO Auto-generated method stub
  335.  
  336.                 super.onStop();
  337.  
  338.                 db.close();
  339.  
  340.                 dbHelper.close();
  341.  
  342.         }
  343.  
  344. }
Parsed in 0.055 seconds, using GeSHi 1.0.8.4
sujay
Junior Developer
Junior Developer
 
Posts: 14
Joined: Wed May 20, 2009 11:01 am

Postby sujay » Thu May 28, 2009 1:21 pm

this one is for SharedPreferences...
this is also jus an example...
Syntax: [ Download ] [ Hide ]
Using java Syntax Highlighting
  1.  
  2. import android.app.Activity;
  3.  
  4. import android.content.SharedPreferences;
  5.  
  6. import android.os.Bundle;
  7.  
  8. import android.widget.EditText;
  9.  
  10.  
  11.  
  12. public class starter extends Activity {
  13.  
  14.     /** Called when the activity is first created. */
  15.  
  16.     private EditText msg;
  17.  
  18.  
  19.  
  20.     @Override
  21.  
  22.     public void onCreate(Bundle savedInstanceState) {
  23.  
  24.         super.onCreate(savedInstanceState);
  25.  
  26.         msg = new EditText(this);
  27.  
  28.     }
  29.  
  30.  
  31.  
  32.     protected void onPause() {
  33.  
  34.         super.onPause();
  35.  
  36.         try {
  37.  
  38.             SharedPreferences.Editor editor = getPreferences(0).edit();
  39.  
  40.             editor.putString("text", msg.getText().toString());
  41.  
  42.             editor.commit();
  43.  
  44.         } catch (Exception e) {
  45.  
  46.             System.out.println(e.getMessage());
  47.  
  48.         }
  49.  
  50.     }
  51.  
  52.  
  53.  
  54.     protected void onResume() {
  55.  
  56.         super.onResume();
  57.  
  58.         try {
  59.  
  60.             SharedPreferences settings = getPreferences(0);
  61.  
  62.             String text = (settings.getString("text", "oh no"));
  63.  
  64.             if (text != null) {
  65.  
  66.                 msg.setText(text);
  67.  
  68.             }
  69.  
  70.             setContentView(msg);
  71.  
  72.         } catch (Exception e) {
  73.  
  74.             System.out.println(e.getMessage());
  75.  
  76.         }
  77.  
  78.     }
  79.  
  80. }
  81.  
  82.  
Parsed in 0.036 seconds, using GeSHi 1.0.8.4
sujay
Junior Developer
Junior Developer
 
Posts: 14
Joined: Wed May 20, 2009 11:01 am

Postby sojo » Thu May 28, 2009 1:28 pm

sujay

Thank you very much for help me .. Thank you :)
sojo
Developer
Developer
 
Posts: 35
Joined: Sat Apr 25, 2009 2:06 am

Top

Return to Multimedia Problems

Who is online

Users browsing this forum: No registered users and 20 guests