Hôm nay  VnSkills Multimedia sẽ giới thiệu cho các bạn hoc lap trinh android về toggle button và checkbox 
ToggleButton: Cho phép người dùng có thể thay đổi cài đặt giữa hai trạng thái.
CheckBox: Cho phép người dùng chọn một trong hai trạng thái các bạn đã rất quen thuộc với CheckBox với remmerber trên yahoo và facbook…
Để làm rõ 2 thành phần này trong ví dụ này mình sẽ làm một ứng dụng với kịch bản như sau: Giao diện của ứng dụng gồm 1 CheckBox (CB), 1 ToggleButton(TB) và 1 Button. Khi bạn click vào CB hay TB mình sẽ hiện Toast để thông báo trạng thái hiện tại của CB hay TB. Khi bạn click vào Button mình sẽ hiển thị trạng thái hiện tại của CB và TB
Để làm được ví dụ này các bạn thực hiện lần lượt các bước sau:
Bước 1: Mở file res-> values  ->strings.xml
1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">CheckBoxDemo</string>
 <string name="action_settings">Settings</string>
 <string name="hello_world">Hello world!</string>
 <string name="cbDemo">Remember</string>
 <string name="textOn">BAT</string>
 <string name="textOff">TAT</string>
 <string name="showState">Show States</string>
</resources>
Bước 2: Mở file res-> layout ->activity_main.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical"
 tools:context=".MainActivity" >
<CheckBox
 android:id="@+id/cbDemo"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:layout_marginTop="10dp"
 android:checked="false"
 android:text="@string/cbDemo" />
<ToggleButton
 android:id="@+id/tbDemo"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginTop="10dp"
 android:checked="false"
 android:textOff="@string/textOff"
 android:textOn="@string/textOn" />
<Button
 android:id="@+id/btShowState"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginTop="10dp"
 android:text="@string/showState" />
</LinearLayout>
Bước 3: mở file MainActivity.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
package com.example.checkboxdemo;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.Toast;
import android.widget.ToggleButton;
public class MainActivity extends Activity {
// khai bao CheckBox va ToggleButton
 private CheckBox cbDemo;
 private ToggleButton tbDemo;
 private Button btShowState;
@Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
// ve cac buoc xu ly cua CheckBox va ToggleButton cung tuong tu cac loai
 // View khac
 // can khai bao bien -> link den layout de dieu khien
 // su kien hay duoc su dung de handler cho CheckBox va ToggleButton la
 // setOnCheckedChangeListener
cbDemo = (CheckBox) findViewById(R.id.cbDemo);
cbDemo.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
 public void onCheckedChanged(CompoundButton buttonView,
 boolean isChecked) {
 // Khi check box thay doi gia tri se thuc hien doan lenh trong
 // ham nay
 if (isChecked) {
 ShowToastLong(MainActivity.this, "CheckBox is true");
 } else {
 ShowToastLong(MainActivity.this, "CheckBox is false");
 }
}
 });
tbDemo = (ToggleButton) findViewById(R.id.tbDemo);
 tbDemo.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
 public void onCheckedChanged(CompoundButton buttonView,
 boolean isChecked) {
 // Khi ToggleButton thay doi gia tri se thuc hien doan lenh
 // trong
 // ham nay
 if (isChecked) {
 ShowToastLong(MainActivity.this, "ToggleButton is BAT");
 } else {
 ShowToastLong(MainActivity.this, "ToggleButton is TAT");
 }
 }
 });
// Cac ban co the lay trang thai hien tai cua CheckBox va ToggleButton
 // khi can
 // trong vi du nay khi onClick vao Button minh se hien thi ra trang thai
 // hien tai
 // cua CheckBox va Toggle la co bi Checked hay khong
btShowState = (Button) findViewById(R.id.btShowState);
 btShowState.setOnClickListener(new OnClickListener() {
@Override
 public void onClick(View v) {
 boolean sttCheckBox = cbDemo.isChecked();
 boolean sttToggleButton = tbDemo.isChecked();
 ShowToastLong(MainActivity.this, "CheckBox is checked: "
 + sttCheckBox + " ToggleButton is checked: "
 + sttToggleButton);
}
 });
}
protected static void ShowToastLong(Context mContext, String message) {
 // TODO Auto-generated method stub
 Toast.makeText(mContext, message, Toast.LENGTH_LONG).show();
 }
@Override
 public boolean onCreateOptionsMenu(Menu menu) {
 // Inflate the menu; this adds items to the action bar if it is present.
 getMenuInflater().inflate(R.menu.main, menu);
 return true;
 }
}

0 nhận xét:

Đăng nhận xét

 
Top