2016-03-19 4 views
0

チェックボックスをオンにすると、別のアクティビティでテキストを出力して、その状態を保存できます。私はいずれかがある場合は、以下の方法で、申し訳ありませんと環境設定を使用することができ、それを値を保存するためのチェックボックスを表示できますか?

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これを試してください – saeed

+0

また、onClickリスナーの代わりにチェックボックスにsetOnCheckedChangeListenerを使用する方が良いでしょう。 – Wukash

+0

これは基本的に環境設定画面ですか?あなたは 'PreferenceActivity'や' PreferenceFragment'を見ることができます。チェックボックスの値やそのようなものをたくさん保存するのに便利です。 –

答えて

0

は、グローバル3を作成 ....共有設定を必要といけませんchar変数

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

その後、

 if (Lothianside.isChecked()){ 

     i="t"; 

     } 
     else{ 
     i="f"; 
     } 

     if (Mckeowns.isChecked()){ 

      j="t"; 

     }else{ 
       j="f"; 
      } 


     if (Loch.isChecked()){ 

      k="t"; 

     } 
     else{ 
       k="f"; 
      } 
今、あなたは今、あなたのnew_activityにあなたは、このように、このこの変数にアクセスすることができます...あなたはこのような方法でそのコードを書く新しいアクティビティを呼び出すために

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); 

を行っているとき - -

@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それは... :) plsはコーディングhelpfull.happyある右の場合はその答えを作ることを忘れていけない

+0

ありがとう、これは素晴らしいです! – ablnoozy

+0

コンゴ:)幸せなコーディング:) – snehasish

0

を行う方法がわからないんだけど、私はどこかの共有設定で配置する必要があります知っているが、私はこれに新たなんです私は間違ったスペルを書いてしまいました。

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 
} 
あなたのコードで

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

私はこのようないけないけど、あなたはonCheckChangedリスナーを設定する必要があります。

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

これをif文でどのように使うのですか? – ablnoozy

関連する問題