teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

コード例

2015/11/18 16:19

投稿

swordone
swordone

スコア20675

answer CHANGED
@@ -1,3 +1,28 @@
1
1
  ToggleButtonにsetOnCheckedChangeListenerでOnCheckedChangeListenerをセットし、
2
2
  そのリスナーの処理でTextViewを書き換えればいいです。
3
- [ToggleButtonでON/OFFを表現する](http://techbooster.jpn.org/andriod/ui/2913/)
3
+ [ToggleButtonでON/OFFを表現する](http://techbooster.jpn.org/andriod/ui/2913/)
4
+
5
+ ```java
6
+ public class MyActivity extends Activity{
7
+
8
+ public void onCreate(Bundle savedInstanceState){
9
+ super.onCreate(savedInstanceState);
10
+ setContentView(R.layout.main); //xmlレイアウトファイルから画面レイアウト作成
11
+ //idからTextViewとToggleButtonを探す
12
+ final TextView textView = (TextView)findViewById(R.id.textview);
13
+ ToggleButton tb = (ToggleButton)findViewById(R.id.togglebutton);
14
+ tb.setOnCheckedChangeListener(new OnCheckedChangedListener() {
15
+
16
+ //「トグルボタンなどの2値を取るボタンの状態が変化した時」に呼ばれるメソッド
17
+ //buttonViewは状態が変化したボタンのオブジェクト、isCheckedは変化後の状態(ONの時true)
18
+ @Override
19
+ public void onChackedChanged(CompoundButton buttonView, boolean isChecked){
20
+ //textViewに、ONになった時"ON"を、OFFになった時"OFF"と表示する
21
+ textView.setText(isChecked ? "ON" : "OFF");
22
+ }
23
+ });
24
+
25
+ }
26
+
27
+ }
28
+ ```