Nếu bạn muốn giảm bớt các dòng mã sau đó sử dụng View's OnClick() with switch statement
và nếu bạn muốn xử lý độc lập toàn bộ nhấp chuột (để dễ dàng hiểu và duy trì code) sau đó sử dụng riêng biệt tất cả button's onClick().
Cập nhật:
Nếu bạn đã khai báo các nút trong tệp xml bố cục hoạt động của mình, chứ không phải viết thuộc tính android:onClick=""
với cùng tên phương thức cho tất cả các nút và triển khai phương thức đó trong hoạt động của bạn. Bây giờ bạn có một phương pháp cho tất cả các nút và trong phương pháp đó phân biệt các nút với id.
Ví dụ:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button android:id="@+id/button1"
android:layout_width="wrap_content"
android:onClick="buttonOnClick"
android:layout_height="wrap_content"
android:text="Hello, I am a Button 1" />
<Button android:id="@+id/button2"
android:layout_width="wrap_content"
android:onClick="buttonOnClick"
android:layout_height="wrap_content"
android:text="Hello, I am a Button 2" />
<Button android:id="@+id/button3"
android:layout_width="wrap_content"
android:onClick="buttonOnClick"
android:layout_height="wrap_content"
android:text="Hello, I am a Button 3" />
</LinearLayout>
Bây giờ trong hoạt động của bạn thực hiện buttonOnClick
như,
public void buttonOnClick(View view)
{
switch(view.getId())
{
case R.id.button1:
// Code for button 1 click
break;
case R.id.button2:
// Code for button 2 click
break;
case R.id.button3:
// Code for button 3 click
break;
}
}
Hoặc bạn có thể áp dụng tương tự trường hợp chuyển đổi cho các nút bấm tự động được thêm vào trong hoạt động của bạn, như thay vì buttonOnClick
bạn phải sử dụng đã triển khaionClick
của OnClickListerner.
Anh ấy không hỏi cách xử lý các nhấp chuột, chỉ kỹ thuật nào trong số hai kỹ thuật mà anh ấy đã biết là được ưu tiên. – goto10