Search code examples
androidstringbuttonandroid-edittextandroid-tabhost

how can I save a universal string?


On my tab host is there anyway I can save a value from an edit text with the click of a button in Tab 5 and then use that value in tabs 1-4?

I have tried this, but I am pretty sure that this only saves it to tab 1.

public class Tab5 extends Activity{


protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.tab5);

    Button btnGo;
    btnGo = (Button) findViewById(R.id.button1);
    final EditText edit = (EditText) findViewById(R.id.editText1);

    btnGo.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) { 
            SharedPreferences myPref = getSharedPreferences("YourPrefrenceName",Context.MODE_PRIVATE);

            SharedPreferences.Editor editor = myPref.edit();
            editor.putString("YourStringKey",edit.getText().toString());
            editor.commit();
                        }

Tab 1

public class Tab1 extends Activity {

private WebView webView;

public final static String URL = "http://outputapps.com/build/infoview.php?id=";

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.tab1);

    webView = (WebView) findViewById(R.id.webView1);
    webView.getSettings().setJavaScriptEnabled(true);
    SharedPreferences myPref = getSharedPreferences("YourPrefrenceName",Context.MODE_PRIVATE);
    String mText =   myPref.getString("YourStringKey","");
    webView.loadUrl(Tab1.URL + mText);
    webView.setWebViewClient(new MyAppWebViewClient());
    WebSettings settings = webView.getSettings();
        settings.setLoadWithOverviewMode(true);
        settings.setUseWideViewPort(true);

}

Solution

  • You can use SharedPrefrences to store primitive data values at any point:

    For Storing:

    SharedPrefrences myPref = getSharedPrefrences("YourPrefrenceName",Context.MODE_PRIVATE);
    
    SharedPrefrences.Editor editor = myPref.edit();
    editor.putString("YourStringKey",editText.getText().toString());
    editor.commit();
    

    For retrieval:

    SharedPrefrences myPref = getSharedPrefrences("YourPrefrenceName",Context.MODE_PRIVATE);
    String mText =   myPref.getString("YourStringKey","");
    

    Now You can use mText wherever you want.