– Tôi sẽ lần lượt đưa ra 6 ví dụ khác nhau cho 6 kiểu lập trình sự kiện ở trên, các bạn hãy cố gắng theo dõi, nó rất quan trọng để làm các bài tập tiếp theo.
1. Onclick in XML:
– Ví dụ 1: Đơn giản chỉ là cộng 2 số, bạn thiết kế giao diện như bên dưới:
– Bạn xem Layout Outline để dễ thiết kế [chú ý là bạn có thể bỏ LinearLayout1 đi]:
– Chú ý là ta sử dụng Onclick in XML:
2. Inline anonymous listener
– Ví dụ viết chương trình chuyển đổi năm dương lịch qua năm âm lịch như hình bên dưới:
– Chú ý là ta tạo một anonymous listener, trước tiên bạn hãy xem Outline XML để cho dễ bề thiết kế:
– Bây giờ ta tiến hành gán sự kiện cho nút “Chuyển đổi” [ở đây id Tôi để là button1], mở Activity class lên vào sửa lệnh như bên dưới:
3. Activity is listener:
– Trong cách viết sự kiện này thì Activity sẽ implements interface có kiểu sự kiện [rất nhiều loại interface]. Ở đây Tôi chỉ ví dụ trường hợp cho Button các trường hợp khác các bạn tự tìm hiểu và suy luận ra.
– Tôi sẽ có một bài ví dụ nhỏ sau: Hãy xây dựng ứng dụng tính Chỉ số khối cơ thể -chữ viết tắt BMI [Body Mass Index ]- được dùng để đánh giá mức độ gầy hay béo của một người. Chỉ số này có thể giúp xác định một người bị bệnh béo phì hay bị bệnh suy dinh dưỡng.
+Cách tính như sau:
Gọi W là khối lượng của một người [tính bằng kg] và H là chiều cao của người đó [tính bằng m], chỉ số khối cơ thể được tính theo công thức:
- BMI < 18: người gầy
- BMI = 18 – 24,9: người bình thường
- BMI = 25 – 29,9: người béo phì độ I
- BMI = 30 – 34,9: người béo phì độ II
- BMI > 35: người béo phì độ III
Tôi sẽ thiết kế giao diện như hình bên dưới và cung cấp Outline, các bạn hãy thiết kế lại để nâng cao kinh nghiệm:
– Để các bạn đỡ căng thẳng thì Tôi xin nói lý do vì sao Tôi lại viết phần mềm này làm ví dụ minh họa. Bởi vì bạn gái của Tôi luôn luôn chê Tôi gầy [hay gọi là Xí Quách gì đó]. Tôi đã chứng mình là Tôi có dáng người chuẩn không cần chỉnh bằng cách viết phần mềm này [công thức theo chuẩn Quốc Tế nên nó là một bằng chứng không thể chối cãi]. Tôi nghĩ các bạn cũng có thể dùng nó để chứng minh rằng mình không bị Béo Phì Cấp độ 3.
– Quay trở lại ví dụ ,Bạn xem Outline của giao diện này dưới đây [Tôi cố tình không cung cấp source XML nhằm mục đích kích thích các bạn tự tìm tòi]:
– Đây là nội dung Coding trong Activity:
import java.text.DecimalFormat;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity
implements OnClickListener{
Button btnChandoan;
EditText editTen,editChieucao,
editCannang,editBMI,editChandoan;
@Override
protected void onCreate[Bundle savedInstanceState] {
super.onCreate[savedInstanceState];
setContentView[R.layout.activity_main];
btnChandoan=[Button] findViewById[R.id.btntinhBMI];
btnChandoan.setOnClickListener[this];
editTen=[EditText] findViewById[R.id.editten];
editChieucao=[EditText] findViewById[R.id.editchieucao];
editCannang=[EditText] findViewById[R.id.editcannang];
editBMI=[EditText] findViewById[R.id.editBMI];
editChandoan=[EditText] findViewById[R.id.editChanDoan];
}
@Override
public void onClick[View arg0] {
double H=Double.parseDouble[editChieucao.getText[]+””];
double W=Double.parseDouble[editCannang.getText[]+””];
double BMI=W/Math.pow[H, 2];
String chandoan=””;
if[BMI