30/09/2018, 20:24

cần giúp đỡ EditText trong android

Mình có 3 cái edittext như sau

EditText O1 = (EditText)findViewByid(R.id.O1);
EditText O2 = (EditText)findViewByid(R.id.O2);
EditText O3 = (EditText)findViewByid(R.id.O3);

button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
//
//
                //Nếu con trỏ đang ở vị trí O1 thì O1.setText("something")
                //Nếu con trỏ đang ở vị trí O2 thì O2.setText("something")
                //Nếu con trỏ đang ở vị trí O3 thì O3.setText("something")
            }
        });

Mình tạo một button, button này có nhiệm vụ setText vào trong các ô edittext đó với điều kiện là con trỏ đang nằm tại ô đó.
Mình muốn hỏi là làm sao để xác định con trỏ chuột đang ở vị trí O1,O2 hay O3 để có thể làm điều kiện setText

minh tiến viết 22:35 ngày 30/09/2018

Dùng 3 cái biến để check.
Set onTouch cho 3 edt, bắt sự kiện và set cho biến
Lúc sau btn sẽ dựa vào biến để biết đang focus vào đâu

Đỗ Hoàng Sơn viết 22:39 ngày 30/09/2018

Chào bạn, bạn có thể sử dụng:

editText.isFocused(); //hoặc editText.hasFocus();

để kiểm tra xem editText đó có được Focus hay không.
Bạn có thể tham khảo thêm đoạn code phía dưới để bắt sự kiện thay đổi Focus.

edit_Text.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if(hasFocus){
Toast.makeText(getApplicationContext(), “Có focus ở đây nè”, Toast.LENGTH_LONG).show();
}else {
Toast.makeText(getApplicationContext(), “Mất focus rồi”, Toast.LENGTH_LONG).show();
}
}
});

Bài liên quan
0