2016-03-19 12 views
0

Wenn das Kontrollkästchen aktiviert ist, möchte ich Text in einer anderen Aktivität ausgeben, um den Status zu speichern. Ich weiß, ich muss irgendwo auf gemeinsam genutzte Präferenzen setzen in, aber ich bin neu in diesem so bin ich nicht sicher, wie es gehtKann ich Kontrollkästchen aktivieren, um ihre Werte zu speichern?

public class Bookingscreen extends AppCompatActivity { 

CheckBox Lothianside; 
CheckBox Mckeowns; 
CheckBox Loch; 
OnClickListener checkboxListener; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_bookingscreen); 
    Lothianside =(CheckBox)findViewById(R.id.checkBox3); 
    Mckeowns =(CheckBox)findViewById(R.id.checkBox4); 
    Loch =(CheckBox)findViewById(R.id.checkBox5); 
    checkboxListener = new OnClickListener() { 
     @Override 
     public void onClick(View v) { 

      if (Lothianside.isChecked()){ 

      } 

      if (Mckeowns.isChecked()){ 

      } 

      if (Loch.isChecked()){ 

      } 

     } 
    }; 

    Lothianside.setOnClickListener(checkboxListener); 
    Mckeowns.setOnClickListener(checkboxListener); 
    Loch.setOnClickListener(checkboxListener); 




} 



} 
+0

http://Stackoverflow.com/a/10238647/3790150 versuchen Sie dies – saeed

+0

Auch ist es wahrscheinlich besser für Sie zu verwenden SetOnCheckedChangeListener für Ihre Kontrollkästchen anstelle von onClick Listener – Wukash

+0

Ist dies im Wesentlichen eine Einstellung Bildschirm? Vielleicht möchten Sie 'PreferenceActivity' und/oder' PreferenceFragment' betrachten. Sie geben Ihnen schöne einfache Möglichkeiten, viele Checkbox-Werte und ähnliches zu speichern. –

Antwort

0

nicht geteilt Vorlieben benötigen .... erstellen 3 global Zeichenvariable

char i ="f"; 
char j="f"; 
char k="f"; 

dann

 if (Lothianside.isChecked()){ 

     i="t"; 

     } 
     else{ 
     i="f"; 
     } 

     if (Mckeowns.isChecked()){ 

      j="t"; 

     }else{ 
       j="f"; 
      } 


     if (Loch.isChecked()){ 

      k="t"; 

     } 
     else{ 
       k="f"; 
      } 

jetzt, wenn Sie Ihre neue Tätigkeit Sie diesen Code auf diese Weise schreiben nennen gehen ...

Intent intent = new Intent(current_activity_name.this, new_activity.class); 
intent.putExtra("i_value", i); 
intent.putExtra("j_value", j); 
intent.putExtra("k_value", k); 
startActivity(intent); 

jetzt in Ihrem new_activity Sie diese diese Variable auf diese Weise zugreifen können - -

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.new_activity_main); 

    Bundle extras = getIntent().getExtras(); 
    int i=extras.getString("i_value"); 
    int j=extras.getString("j_value"); 
    int k=extras.getString("k_value"); 
} 

thst es .. :) pls nicht vergessen, dass die Antwort richtig zu machen, wenn es helpfull.happy ist Codierung

+0

Danke, das ist großartig! – ablnoozy

+0

congo :) glückliche Codierung :) – snehasish

0

Sie Einstellungen mit den folgenden Methoden verwenden können, sorry, wenn es irgendwelche Schreibfehler, tippte ich schnell.

public void save(String key, String value){ 
    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); 
    prefs.edit().putString(key, value).commit(); 
} 

public String retrieve(String key){ 
    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); 
    return prefs.getString(key, ""); //the second parameter is the default if no value is found 
} 

In Ihrem Code:

if (Lothianside.isChecked()){ 
    save("lothianKey", "text that you want to save when lothianside.ischecked()"); 
} 

Obwohl ich so nicht, sollten Sie einen onCheckChanged Listener:

Lothianside.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { 
     @Override 
     public void onCheckedChanged(CompoundButton buttonView,boolean isChecked){ 
     //do stuff here if the box is checked or unchecked 
     } 
    } 
); 
+0

Also, wie würde ich das in meinen if-Anweisungen verwenden? – ablnoozy

Verwandte Themen