2013-08-20 31 views
33

Tôi có một hộp kiểm trong android trong đó có các XML sau đây:Cách kiểm tra xem hộp kiểm android có được kiểm tra trong phương thức onClick của nó (được khai báo bằng XML) không?

<CheckBox 
    android:id="@+id/item_check" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:onClick="itemClicked" /> 

Đây là phương pháp của tôi onClick() trong lớp Hoạt động của tôi.

public void itemClicked(View v) { 
    //code to check if this checkbox is checked! 
} 

Tôi biết rằng chúng ta có thể tạo ra một đối tượng của hộp kiểm và gán id với nó. Nhưng có cách nào tốt hơn để đạt được chức năng khi khai báo phương thức onClick qua XML không?

+6

((CheckBox) v) .isChecked(); – Pavlos

Trả lời

70

thử này một:

public void itemClicked(View v) { 
    //code to check if this checkbox is checked! 
    CheckBox checkBox = (CheckBox)v; 
    if(checkBox.isChecked()){ 

    } 
} 
5

này sẽ làm các trick:

public void itemClicked(View v) { 
    if (((CheckBox) v).isChecked()) { 
     Toast.makeText(MyAndroidAppActivity.this, 
      "Checked", Toast.LENGTH_LONG).show(); 
    } 
    } 
3

Bạn có thể thử mã này:

public void itemClicked(View v) { 
//code to check if this checkbox is checked! 
if(((Checkbox)v).isChecked()){ 
    // code inside if 
} 
} 
3
enter code here 

<CheckBox 
     android:id="@+id/checkBox1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Fees Paid Rs100:" 
     android:textColor="#276ca4" 
     android:checked="false" 
     android:onClick="checkbox_clicked" /> 

Hoạt động chính từ đây

public class RegistA extends Activity { 
CheckBox fee_checkbox; 
@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_regist); 
fee_checkbox = (CheckBox)findViewById(R.id.checkBox1);// Fee Payment Check box 
} 

// hộp kiểm nhấp

 public void checkbox_clicked(View v) 
    { 

     if(fee_checkbox.isChecked()) 
     { 
      // true,do the task 

     } 
     else 
     { 

     } 

    } 
Các vấn đề liên quan