In this blog we have discussed shared preference and bundle collection. We can pass the value from parent activity to child activity using the bundled collection and shared preference.
1. Shared Preference
2. Bundle Collection
Shared Preference
Preferences are typically name value pairs. They can be stored as “Shared Preferences” across various activities in an application (note currently it cannot be shared across processes). First we need to put our value in to the context. And the context object lets you retrieve SharedPreferences through the method Context.getSharedPreferences().
1. Make a Shared Preference Collection
2. Retrieve Shared Preference Collection
Make a Shared Preference Collection
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
SharedPreferences.Editor prefsEditor = myPrefs.edit();
prefsEditor.putString("sample", "this is test commands");
prefsEditor.commit();
Retrieve Shared Preference Collection
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
prefsEditor.getString("sample", "DEFAULT VALUE");
1. Create a two Activity [MainActivity & ChildActivity]
Activity : 1 - MainActivity
public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
Activity : 2 - ChildActivity
public class ChildActivity extends Activity {
/**
* @see android.app.Activity#onCreate(Bundle)
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// TODO Put your code here
}
}
2. Define Your Shared collection
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
SharedPreferences.Editor prefsEditor = myPrefs.edit();
prefsEditor.putString("sample", "this is test commands");
prefsEditor.commit();
3. Call the child Activity from mainactivity
startActivity(new Intent(this,ChildActivity.class));
4. Get the Value from MainActivity in ChildActivity
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
5. Toast the Message
Toast.makeText(this, myPrefs.getString("sample", "DEFAULT VALUE"), Toast.LENGTH_LONG).show();
Full Source :MainActivity.java
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
SharedPreferences.Editor prefsEditor = myPrefs.edit();
prefsEditor.putString("sample", "this is test commands");
prefsEditor.commit();
startActivity(new Intent(this,ChildActivity.class));
}
}
-------ChildActivity.java----------
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.widget.Toast;
public class ChildActivity extends Activity {
/**
* @see android.app.Activity#onCreate(Bundle)
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
Toast.makeText(this, myPrefs.getString("sample", "DEFAULT VALUE"), Toast.LENGTH_LONG).show();
}
}
1. Shared Preference
2. Bundle Collection
Shared Preference
Preferences are typically name value pairs. They can be stored as “Shared Preferences” across various activities in an application (note currently it cannot be shared across processes). First we need to put our value in to the context. And the context object lets you retrieve SharedPreferences through the method Context.getSharedPreferences().
1. Make a Shared Preference Collection
2. Retrieve Shared Preference Collection
Make a Shared Preference Collection
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
SharedPreferences.Editor prefsEditor = myPrefs.edit();
prefsEditor.putString("sample", "this is test commands");
prefsEditor.commit();
Retrieve Shared Preference Collection
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
prefsEditor.getString("sample", "DEFAULT VALUE");
1. Create a two Activity [MainActivity & ChildActivity]
Activity : 1 - MainActivity
public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
Activity : 2 - ChildActivity
public class ChildActivity extends Activity {
/**
* @see android.app.Activity#onCreate(Bundle)
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// TODO Put your code here
}
}
2. Define Your Shared collection
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
SharedPreferences.Editor prefsEditor = myPrefs.edit();
prefsEditor.putString("sample", "this is test commands");
prefsEditor.commit();
3. Call the child Activity from mainactivity
startActivity(new Intent(this,ChildActivity.class));
4. Get the Value from MainActivity in ChildActivity
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
5. Toast the Message
Toast.makeText(this, myPrefs.getString("sample", "DEFAULT VALUE"), Toast.LENGTH_LONG).show();
Full Source :MainActivity.java
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
SharedPreferences.Editor prefsEditor = myPrefs.edit();
prefsEditor.putString("sample", "this is test commands");
prefsEditor.commit();
startActivity(new Intent(this,ChildActivity.class));
}
}
-------ChildActivity.java----------
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.widget.Toast;
public class ChildActivity extends Activity {
/**
* @see android.app.Activity#onCreate(Bundle)
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
SharedPreferences myPrefs = this.getSharedPreferences("contact", MODE_WORLD_READABLE);
Toast.makeText(this, myPrefs.getString("sample", "DEFAULT VALUE"), Toast.LENGTH_LONG).show();
}
}