如何在Android Edittext上以编程方式设置drawableRight?

San*_*ela 72 android drawable

我知道用XML设置drawableRight.但我需要以编程方式进行,因为它是根据某些条件进行的更改.

Law*_*hoy 215

您可以使用以下功能:

editText.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.drawableRight, 0);
Run Code Online (Sandbox Code Playgroud)

对应于可绘制位置的参数的顺序是:左,上,右,下


Ret*_*lai 6

在这里进一步了解

EditText myEdit = (EditText) findViewById(R.id.myEdit);
myEdit.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.icon, 0);  
// where params are (left,top,right,bottom)
Run Code Online (Sandbox Code Playgroud)

您还可以通过编程方式设置drawable填充:

myEdit.setCompoundDrawablePadding("Padding value");
Run Code Online (Sandbox Code Playgroud)