반응형
Android Edittext에서 프로그래밍 방식으로 drawableRight를 설정하는 방법은 무엇입니까?
XML의 drawableRight 설정에 대해 알고 있습니다. 그러나 어떤 조건에 따라 변경되기 때문에 프로그래밍 방식으로 수행해야했습니다.
아래 기능을 사용할 수 있습니다.
editText.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.drawableRight, 0);
드로어 블 위치에 해당하는 매개 변수의 순서는 왼쪽, 위쪽, 오른쪽, 아래쪽입니다.
여기에서 더 찾기
EditText myEdit = (EditText) findViewById(R.id.myEdit);
myEdit.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.icon, 0);
// where params are (left,top,right,bottom)
프로그래밍 방식으로 드로어 블 패딩을 설정할 수도 있습니다.
myEdit.setCompoundDrawablePadding("Padding value");
다음과 같이 시도하십시오.
Drawable img = getContext().getResources().getDrawable( R.drawable.smiley );
EdtText.setCompoundDrawablesWithIntrinsicBounds( 0, 0, img, 0);
편집하다 :
int img = R.drawable.smiley;
EdtText.setCompoundDrawablesWithIntrinsicBounds( 0, 0, img, 0);
int img = R.drawable.smiley;
editText.setCompoundDrawables( null, null, img, null );
여기에 설명
setCompoundDrawablesWithIntrinsicBounds (int left, int top, int right, int bottom)
드로어 블 (있는 경우)이 텍스트의 왼쪽, 위, 오른쪽 및 아래에 나타나도록 설정합니다. Drawable을 원하지 않으면 0을 사용하십시오. Drawables의 경계는 고유 경계로 설정됩니다.
시험:
EditText editFirstname = (EditText) findViewById(R.id.edit_fname);
Drawable icUser = getResources().getDrawable(R.drawable.ic_user);
editFirstname.setCompoundDrawablesWithIntrinsicBounds(null, null, icUser, null);
그런 다음 특정 드로어 블에 터치 리스너를 추가 할 수 있습니다.
setCompoundDrawablesWithIntrinsicBounds () 함수에 내장 된 editText 뷰 (여기서는 txview)를 사용하여 원하는 작업을 수행 할 수 있습니다.
내 코드에서 나는 이것을 이렇게 사용했습니다. txview.setCompoundDrawablesWithIntrinsicBounds (0,0, R.drawable.ic_arrow_drop_up, 0);
txview.setCompoundDrawablesWithIntrinsicBounds(left,top,right,bottom);
한 번에 왼쪽과 오른쪽을 모두 변경하려면이 한 줄을 사용합니다.
download.setCompoundDrawablesWithIntrinsicBounds( R.drawable.ic_lock_open_white_24dp, 0, R.drawable.ic_lock_open_white_24dp, 0);
et_feedback.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
}
et_feedback.setCompoundDrawablesWithIntrinsicBounds(0,R.mipmap.feedback_new, 0, 0);
et_feedback.setTextColor(Color.BLACK);
}
});
이것을 사용하여 Drawable 숨기기
et_feedback.setCompoundDrawablesWithIntrinsicBounds(0,0, 0, 0);
안드로이드 그래픽 드로어 블이 필요한 경우 작동합니다.
Drawable dw = getApplicationContext().getResources().getDrawable(R.drawable.edit);
Button start = (Button)findViewById(R.id.buttonStart);
start.setCompoundDrawablesWithIntrinsicBounds(dw, null, null, null);
반응형
'code' 카테고리의 다른 글
Android에서 새 연락처를 추가하는 방법 (0) | 2020.11.06 |
---|---|
Objective-C에서 UIButton 및 UILabel의 텍스트를 어떻게 회전 할 수 있습니까? (0) | 2020.11.06 |
아무것도하지 않는 HTML 링크 만들기 (말 그대로 아무것도하지 않음) (0) | 2020.11.06 |
jQuery를 사용하여 알파벳순으로 옵션 요소 정렬 (0) | 2020.11.06 |
빈 C # 이벤트 처리기를 자동으로 만들기 (0) | 2020.11.06 |