setCompoundDrawablesWithIntrinsicBounds (int left, int top, int right, int bottom)
Ustawia Drawables (jeśli istnieją) tak, aby pojawiały się po lewej stronie, powyżej, po prawej stronie i poniżej tekstu. Użyj 0, jeśli nie chcesz tam Drawable. Granice Drawables zostaną ustawione na ich wewnętrzne ograniczenia.
Odpowiedzi:
Możesz skorzystać z poniższej funkcji:
editText.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.drawableRight, 0);
lub (jeśli chcesz przekazać sam drawable zamiast jego identyfikatora)
editText.setCompoundDrawablesWithIntrinsicBounds(null, null, ContextCompat.getDrawable(context,R.drawable.drawableRight), null)
Kolejność parametrów odpowiadająca lokalizacji do rysowania jest następująca: lewy, górny, prawy, dolny
źródło
Znajdź więcej tutaj
EditText myEdit = (EditText) findViewById(R.id.myEdit); myEdit.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.icon, 0); // where params are (left,top,right,bottom)
Możesz również programowo ustawić dopełnienie do rysowania:
myEdit.setCompoundDrawablePadding("Padding value");
źródło
Spróbuj jak poniżej:
Drawable img = getContext().getResources().getDrawable( R.drawable.smiley ); EdtText.setCompoundDrawablesWithIntrinsicBounds( 0, 0, img, 0);
Edytować :
int img = R.drawable.smiley; EdtText.setCompoundDrawablesWithIntrinsicBounds( 0, 0, img, 0);
źródło
Próbować:
EditText editFirstname = (EditText) findViewById(R.id.edit_fname); Drawable icUser = getResources().getDrawable(R.drawable.ic_user); editFirstname.setCompoundDrawablesWithIntrinsicBounds(null, null, icUser, null);
Następnie możesz dodać słuchacza dotyku do tego konkretnego rysunku.
źródło
int img = R.drawable.smiley; editText.setCompoundDrawables( null, null, img, null );
Wyjaśniono tutaj
setCompoundDrawablesWithIntrinsicBounds (int left, int top, int right, int bottom)
Ustawia Drawables (jeśli istnieją) tak, aby pojawiały się po lewej stronie, powyżej, po prawej stronie i poniżej tekstu. Użyj 0, jeśli nie chcesz tam Drawable. Granice Drawables zostaną ustawione na ich wewnętrzne ograniczenia.
źródło
Do zmiany lewej i prawej strony jednocześnie używam tej pojedynczej linii.
download.setCompoundDrawablesWithIntrinsicBounds( R.drawable.ic_lock_open_white_24dp, 0, R.drawable.ic_lock_open_white_24dp, 0);
źródło
Możesz użyć swojego widoku editText (tutaj jest to txview) wbudowanej funkcji setCompoundDrawablesWithIntrinsicBounds (), aby zrobić to, czego szukasz
w moim kodzie użyłem tego w ten sposób. txview.setCompoundDrawablesWithIntrinsicBounds (0,0, R.drawable.ic_arrow_drop_up, 0);
txview.setCompoundDrawablesWithIntrinsicBounds(left,top,right,bottom);
źródło
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); } });
Ukryj do rysowania za pomocą tego
et_feedback.setCompoundDrawablesWithIntrinsicBounds(0,0, 0, 0);
źródło
Jeśli wymaga grafiki dla Androida, to zadziała
Drawable dw = getApplicationContext().getResources().getDrawable(R.drawable.edit); Button start = (Button)findViewById(R.id.buttonStart); start.setCompoundDrawablesWithIntrinsicBounds(dw, null, null, null);
źródło